Я пытаюсь установить простой стек Nextcloud с docker -compose и Traefik.
Вот мой docker -compose.yml
version: '3.7'
services:
nextcloud-database:
image: mariadb
container_name: nextcloud-database
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
restart: always
volumes:
- $PWD/db:/var/lib/mysql
env_file:
- db.env
networks:
- backend
logging:
options:
max-size: '12m'
max-file: '5'
driver: json-file
nextcloud-redis:
image: redis:alpine
container_name: nextcloud-redis
restart: always
networks:
- backend
nextcloud-cron:
image: nextcloud:latest
container_name: nextcloud-cron
restart: always
volumes:
- $PWD/cloud:/var/www/html
entrypoint: /cron.sh
networks:
- backend
nextcloud-app:
image: nextcloud:latest
container_name: nextcloud-app
restart: always
volumes:
- $PWD/config:/var/www/html/config
- $PWD/cloud:/var/www/html
- $PWD/apps:/var/www/html/apps
- $PWD/data:/var/www/html/data
environment:
- NEXTCLOUD_DATA_DIR=/var/www/html/data
- MYSQL_HOST=nextcloud-database
env_file:
- db.env
depends_on:
- nextcloud-database
- nextcloud-redis
- nextcloud-cron
labels:
- "traefik.enable=true"
- "traefik.http.routers.nextcloud.entrypoints=http"
- "traefik.http.routers.nextcloud.rule=Host(`nextcloud.blablubb.de`)"
- "traefik.http.middlewares.nextcloud-https-redirect.redirectscheme.scheme=https"
- "traefik.http.routers.nextcloud.middlewares=nextcloud-https-redirect"
- "traefik.http.routers.nextcloud-secure.entrypoints=https"
- "traefik.http.routers.nextcloud-secure.rule=Host(`nextcloud.blablubb.de`)"
- "traefik.http.routers.nextcloud-secure.tls=true"
- "traefik.http.routers.nextcloud-secure.tls.certresolver=http"
- "traefik.http.routers.nextcloud-secure.service=nextcloud"
- "traefik.http.services.nextcloud.loadbalancer.server.port=80"
- "traefik.docker.network=proxy"
networks:
- proxy
- backend
logging:
options:
max-size: '12m'
max-file: '5'
driver: json-file
networks:
proxy: # this is the network provided by traefik
external: true
backend:
external: false
и БД .env
MYSQL_PASSWORD="waff"
MYSQL_DATABASE=nextcloud
MYSQL_USER=nextcloud
MYSQL_ROOT_PASSWORD="waff"
Экземпляр Nextcloud доступен через домен nextcloud.blablubb.de. Итак, мой вопрос: что нужно, чтобы мой контейнер nextcloud- docker мог общаться друг с другом? Я думал, что он обрабатывается через бэкэнд-сеть, но у меня всегда появляется сообщение об ошибке, например, nextcloud- mysql недоступно.
Без Treafik эта настройка работает нормально.
Спасибо ребята.