#### NETWORKS networks: traefik_front_network: external: true back_network_vbulletin: driver: bridge attachable: true #### SERVICES services: # NGINX nginx: container_name: nginx-vbulletin hostname: nginx-vbulletin image: nginx:1-alpine volumes: - ./www:/var/www/html - ./nginx/nginx.conf:/etc/nginx/nginx.conf:rw - ./nginx/conf.d/:/etc/nginx/conf.d:rw - ./logs:/var/log/nginx:rw networks: - traefik_front_network - back_network_vbulletin restart: always links: - php83 - mysql depends_on: - mysql labels: - "traefik.enable=true" - "traefik.docker.network=traefik_front_network" # HTTP - "traefik.http.routers.vbulletin-http.rule=Host(`vbulletin.tips-of-mine.com`)" - "traefik.http.routers.vbulletin-http.entrypoints=http" # HTTPS - "traefik.http.routers.vbulletin-https.rule=Host(`vbulletin.tips-of-mine.com`)" - "traefik.http.routers.vbulletin-https.entrypoints=https" - "traefik.http.routers.vbulletin-https.service=vbulletin-service" - "traefik.http.routers.vbulletin-https.tls=true" # Middleware # Service - "traefik.http.services.vbulletin-service.loadbalancer.server.port=80" # PHP php83: container_name: php83-vbulletin hostname: php83-vbulletin # image: php:8.3-fpm volumes: - ./www:/var/www/html:rw - ./logs:/var/log/php-fpm:rw networks: - back_network_vbulletin build: context: './php/' args: PHP_VERSION: 8.3 ### mysql mysql: container_name: mysql-vbulletin hostname: mysql-vbulletin image: mysql:8.0 restart: always volumes: - ./data:/var/lib/mysql networks: - back_network_vbulletin environment: MYSQL_ROOT_PASSWORD: root_password MYSQL_DATABASE: vbulletin MYSQL_USER: your_user MYSQL_PASSWORD: your_password ### phpMyAdmin service phpmyadmin: container_name: phpmyadmin-vbulletin hostname: phpmyadmin-vbulletin image: phpmyadmin/phpmyadmin:latest networks: - traefik_front_network - back_network_vbulletin environment: PMA_HOST: mysql PMA_ARBITRARY: 1 MYSQL_ROOT_PASSWORD: root_password UPLOAD_LIMIT: 50M depends_on: - mysql labels: - "traefik.enable=true" - "traefik.docker.network=interne" # HTTP - "traefik.http.routers.phpmyadmin-http.rule=Host(`phpmyadmin.tips-of-mine.com`)" - "traefik.http.routers.phpmyadmin-http.entrypoints=http" # HTTPS - "traefik.http.routers.phpmyadmin-https.rule=Host(`phpmyadmin.tips-of-mine.com`)" - "traefik.http.routers.phpmyadmin-https.entrypoints=https" - "traefik.http.routers.phpmyadmin-https.service=phpmyadmin-service" - "traefik.http.routers.phpmyadmin-https.tls=true" # Middleware # Service - "traefik.http.services.phpmyadmin-service.loadbalancer.server.port=80" ### msmtpd msmtpd: container_name: msmtpd-vbulletin hostname: msmtpd-vbulletin image: crazymax/msmtpd:latest networks: - back_network_vbulletin environment: - "TZ=Europe/Paris" - "PUID=1500" - "PGID=1500" - "SMTP_HOST=10.0.4.52" - "SMTP_PORT=587" - "SMTP_TLS=on" - "SMTP_STARTTLS=on" - "SMTP_TLS_CHECKCERT=off" - "SMTP_AUTH=on" - "SMTP_USER=hostinfo@tips-of-mine.fr" - "SMTP_PASSWORD=P@ssw0rd!12345" - "SMTP_DOMAIN=localhost" - "SMTP_FROM=hostinfo@tips-of-mine.fr" restart: always healthcheck: test: ["CMD-SHELL", "echo EHLO localhost"] interval: 5s timeout: 5s retries: 5