Мое приложение может подключаться к моему Atlas mongodb, когда я запускаю его на локальном компьютере без контейнера.
Когда я помещаю свое приложение в контейнер, я не могу получить доступ к Atlas mongodb.
Я внес в белый список все IP-адреса.
self.myclient = pymongo.MongoClient(mongodb+srv://admin:<password>@mongodbscrapperconf-lctzq.gcp.mongodb.net/test?retryWrites=true&w=majority&ssl=true&authSource=admin)
Я пытался одновременно подключиться к моей локальной базе данных Atlas с моим контейнером и запустить мой контейнер в GCP. В обоих случаях я получаю сообщение об ошибке тайм-аута от mongoDB.
Мой DockerFile выглядит как
FROM python:3.7
COPY . /app
WORKDIR /app
RUN apt-get update && apt-get install ca-certificates && rm -rf /var/cache/apk/*
COPY ./host.crt /usr/local/share/ca-certificates
RUN update-ca-certificates
RUN pip install -r requirements.txt
EXPOSE 8000
CMD python ./controller.py cloud
needs.txt
iso4217
validators
pymongo
pymongo[srv]
flask
lxml
flask-cors
configparser
ОБНОВЛЕНО: я обнаружил, чтосоединение зашифровано, и соединение должно принимать сертификаты SSL. Я пробовал это, но Atlas все еще отказывается от соединения.