Этот проект использует Docker для развертывания веб-приложения для перевода слов с использованием Nginx, Spring Boot и PostgreSQL.
nginx
: Контейнер для веб-сервера Nginx.api
: Контейнер для Spring Boot приложения.db
: Контейнер для базы данных PostgreSQL.
- Docker
- Docker Compose
-
Настройка сертификатов:
Убедитесь, что у вас есть сертификаты SSL в каталоге
./nginx/certs/
. Если вы используете самоподписанные сертификаты, их можно создать, следуя инструкциям в предыдущем ответе. -
Файлы конфигурации:
nginx/conf
содержит конфигурационные файлы для Nginx.docker/api/Dockerfile
содержит инструкции для создания Docker-образа для Spring Boot приложения.docker/database/Dockerfile
содержит инструкции для создания Docker-образа для PostgreSQL (если требуется).
-
Сборка Docker образов:
Выполните команду:
make build
Это создаст Docker образы для всех сервисов в вашем
docker-compose.yml
. -
Запуск контейнеров:
Запустите контейнеры с помощью команды:
make up
Это запустит контейнеры в фоновом режиме.
-
Остановка и удаление контейнеров:
Для остановки и удаления контейнеров используйте:
make down
-
Пересборка контейнеров:
Если вам нужно пересобрать контейнеры, используйте:
make rebuild
Это остановит контейнеры, пересоберет образы и снова запустит контейнеры.
- Веб-приложение доступно по адресу:
http://localhost
- API доступно по адресу:
http://localhost/translate
.
Пример использования Вы можете использовать curl для отправки запроса на перевод:
curl -k -X POST "https://localhost/translate" \
--data-urlencode "text=Hello, World" \
--data-urlencode "sourceLang=en" \
--data-urlencode "targetLang=ru"
Параметры запроса:
text
: Текст, который вы хотите перевести.
sourceLang
: Исходный язык текста.
targetLang
: Целевой язык для перевода.
Примечание: Флаг -k используется для игнорирования проверки сертификатов SSL. Это необходимо при использовании самоподписанных сертификатов.
- Убедитесь, что у вас установлены все зависимости и правильно настроены переменные окружения.
- Для работы с самоподписанными сертификатами, вам может потребоваться добавить их в список доверенных в вашем браузере.