Доброго времени суток. Суть проблемы: разворачиваю на Docker Compose несколько контейнеров, из которых первый - телеграм бот на питоне и второй - веб сервер на Flask для работы из бота с Web App виджетом. Для загрузки в Web App своего бота веб страницы, она должна быть на адресе с SSL сертификатом (доступна по https:// - требования ТГ). Как правильно организовать работу в таком случае? Желательно что бы это с легкостью потом поднялось на сервере с Linux. При этом в покупке домена нет необходимости, желательно даже к IP статическому не привязываться, а позволить как-то контейнеру иметь доступ к порту 443 другого контейнера по ссылке.
Привожу содержание docker-compose.yml на данный момент:
version: '3.7'
services:
db:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
MYSQL_DATABASE: ${MYSQL_DATABASE}
MYSQL_USER: ${MYSQL_USERNAME}
MYSQL_PASSWORD: ${MYSQL_USER_PASSWORD}
ports:
- "6033:3306"
restart: on-failure
volumes:
- dbdata:/var/lib/mysql
phpmyadmin:
image: phpmyadmin/phpmyadmin
links:
- db
environment:
PMA_HOST: db
PMA_PORT: 3306
PMA_ARBITRARY: 1
restart: on-failure
ports:
- 8081:80
bot:
build: .
command: sh -c "python bot.py"
depends_on:
- db
- phpmyadmin
env_file:
- ./.env
flask:
build: ./web
environment:
- FLASK_ENV=development
- PYTHONUNBUFFERED=True
restart: on-failure
volumes:
- ./web:/web
ports:
- "443:443"
command: sh -c "python main.py"
volumes:
dbdata:
Пока есть идеи как-то через NGROK пробросить это дело. Но не очень хочется быть зависимым от стороннего сервиса...