Этот проект представляет собой веб-приложение для управления базой данных Airbnb, разработанное с использованием Python и Flask. Система позволяет управлять данными о пользователях, комнатах/номерах и их резервациями.
- Python 3.9
- Flask (веб-фреймворк)
- PostgreSQL (база данных)
- Docker и Docker Compose (для контейнеризации и оркестрации)
- HTML, CSS (фронтенд)
app.py: основной файл приложения FlaskDockerfile: инструкции для сборки Docker-образа приложенияdocker-compose.yaml: конфигурация для запуска приложения и базы данныхairbnb.sql: SQL-скрипт для инициализации схемы базы данных
- Docker
- Docker Compose
-
Клонируйте репозиторий:
git clone cd airbnb_GUI -
Запустите приложение с помощью Docker Compose:
docker-compose up --build -
После успешного запуска, приложение будет доступно по адресу
http://localhost:5000 -
Для остановки приложения используйте:
docker-compose down
Основные параметры конфигурации определены в docker-compose.yaml:
-
База данных PostgreSQL:
- Имя БД: airbnb
- Пользователь: postgres
- Пароль: 12345
- Порт: 5432
-
Веб-приложение:
- Порт: 5000
Для внесения изменений в проект:
- Создайте новый ветку для ваших изменений.
git checkout -b feature/your-feature-name - Внесите необходимые изменения в код.
- Пересоберите Docker-образ:
docker-compose build
Схема базы данных инициализируется при первом запуске контейнера PostgreSQL с помощью скрипта airbnb.sql.
- Приложение использует slim-версию Python 3.9 в качестве базового образа.
- В контейнере установлен клиент PostgreSQL для возможности взаимодействия с базой данных.
- Зависимости Python (Flask и psycopg2-binary) устанавливаются при сборке образа.
Если у вас возникли проблемы с запуском приложения, убедитесь, что:
- Порты 5000 и 5432 не заняты другими приложениями.
- У вас установлены последние версии Docker и Docker Compose.
- У вас достаточно прав для запуска Docker-контейнеров.
Если проблемы сохраняются, проверьте логи контейнеров:
docker-compose logs
Этот проект распространяется под лицензией MIT. Подробности см. в файле LICENSE.