Я пытаюсь запустить докер-контейнер, на котором выполняется приложение торнадо в python 3. Он обслуживает несколько вызовов API и записывает данные в службу rethinkdb в системе.RethinkDB не запускается внутри контейнера.Система, на которой он работает, - это Ubuntu 16.04.
Всякий раз, когда я пытался запустить докер с помощью docker-compose, он вылетал, сообщая, что соединение с localhost: 28015 было отклонено.Я изучил проблему и понял, что у docker есть собственная сеть и что внешние соединения должны быть настроены до запуска контейнера.Я использовал эту команду из вопроса, который нашел , чтобы заставить ее работать:
docker run -it --name "$container_name" -d -h "$host_name" -p 9080:9080 -p 1522:1522 "$image_name"
Я изменил имя контейнера, имя хоста, порты и имя образа в соответствии с моим собственным приложением,Теперь докер не падает, но у меня есть две проблемы:
- Я не могу связаться с ним из браузера, указав на https://localhost/login
- Я потерял docker-composeиспользование.Это проблематично, если мы хотим добавить больше сервисов, которые будут взаимодействовать друг с другом в будущем.
Итак, как мне запустить докер, который может общаться с моей базой данных rethinkdb, не помещая эту БД в контейнер?Пожалуйста, дайте мне знать, если вам нужна дополнительная информация, чтобы ответить на этот вопрос.Я буду признателен за ваше руководство в этом.
Конечным результатом является то, что докер будет обслуживать запросы, поступающие через https.Например, у меня есть конечная точка с именем / getURL.Запрос включает токен, подтвержденный в БД.URL выглядит следующим образом: https://some -domain.com / getURL после проверки с помощью БД он отправит обратно соответствующий ответ.Докер должен иметь возможность общаться на 443, а также на 28015. С сервисом rethinkdb.
(Поскольку 443 и https включают использование сертификатов, я был бы признателен за решение, которое обрабатывает это на обычном http с некоторымиСлучайный порт тоже, и я возьму его оттуда)
Спасибо!
PS Сервис работает, когда я запускаю его без докера на pycharm, это конфигурация докера, с которой у меня проблемы.