version: '3.9' services: nginx0: image: "nginx" container_name: "atelierportage.com" restart: "always" labels: - "traefik.enable=true" - "traefik.port=80" - "traefik.http.routers.nginx.rule=Host(`atelierportage.com`, `www.atelierportage.com`)" - "traefik.http.routers.nginx.tls=true" - "traefik.http.routers.nginx.tls.certresolver=myresolver" - "traefik.http.routers.http_catchall.rule=HostRegexp(`{any:.+}`)" - "traefik.http.routers.http_catchall.entrypoints=web" - "traefik.http.routers.http_catchall.middlewares=https_redirect" - "traefik.http.middlewares.https_redirect.redirectscheme.scheme=https" - "traefik.http.middlewares.https_redirect.redirectscheme.permanent=true" - "traefik.http.middlewares.non_www.redirectregex.regex=^https://(?:www\\.)?(.+)" - "traefik.http.middlewares.non_www.redirectregex.replacement=https://$${1}" - "traefik.http.middlewares.non_www.redirectregex.permanent=true" - "traefik.http.routers.nginx.middlewares=https_redirect@docker, non_www@docker" volumes: - "/docker/nginx/default.conf:/etc/nginx/conf.d/default.conf" - "/var/www/atelierportage.com/public_html:/var/www/html" links: - php-fpm - db networks: - traefikproxy php-fpm: build: . volumes: - "/var/www/atelierportage.com/public_html:/var/www/html" networks: - traefikproxy # apache: # build: . # container_name: apache2 # links: # - db # labels: # - "traefik.enable=true" # - "traefik.port=80" # - "traefik.http.routers.http_catchall.rule=HostRegexp(`{any:.+}`)" # - "traefik.http.routers.http_catchall.entrypoints=web" # - "traefik.http.routers.http_catchall.middlewares=https_redirect" # - "traefik.http.middlewares.https_redirect.redirectscheme.scheme=https" # - "traefik.http.middlewares.https_redirect.redirectscheme.permanent=true" # - "traefik.http.middlewares.non_www.redirectregex.regex=^https://(?:www\\.)?(.+)" # - "traefik.http.middlewares.non_www.redirectregex.replacement=https://$${1}" # - "traefik.http.middlewares.non_www.redirectregex.permanent=true" # - "traefik.http.routers.nginx.middlewares=https_redirect@docker, non_www@docker" # volumes: # - /var/www:/var/www # - /docker/httpd/apache2.conf:/etc/apache2/apache2.conf # - /etc/apache2/mods-enabled/rewrite.load:/etc/apache2/mods-enabled/rewrite.load # - /etc/apache2/mods-enabled/ssl.conf:/etc/apache2/mods-enabled/ssl.conf # - /etc/apache2/mods-enabled/ssl.load:/etc/apache2/mods-enabledd/ssl.load # - /etc/apache2/sites-available/000-default.conf:/etc/apache2/sites-enabled/000-default.conf # - /etc/apache2/sites-available/d-jorgensen.com.conf:/etc/apache2/sites-enabled/d-jorgensen.com.conf # - /etc/apache2/sites-available/denbyjorgensen.com.conf:/etc/apache2/sites-enabled/denbyjorgensen.com.conf # - /etc/apache2/sites-available/atelierportage.com.conf:/etc/apache2/sites-enabled/atelierportage.com.conf # - /etc/apache2/sites-available/kefcon.ca.conf:/etc/apache2/sites-enabled/kefcon.ca.conf # - /etc/apache2/sites-available/ripplesandwaves.ca.conf:/etc/apache2/sites-enabled/ripplesandwaves.ca.conf # - /etc/apache2/sites-available/kathleensera.com.conf:/etc/apache2/sites-enabled/kathleensera.com.conf # - /etc/apache2/sites-available/d-jorgensen.com-le-ssl.conf:/etc/apache2/sites-enabled/d-jorgensen.com-le-ssl.conf # - /etc/apache2/sites-available/denbyjorgensen.com-le-ssl.conf:/etc/apache2/sites-enabled/denbyjorgensen.com-le-ssl.conf # - /etc/apache2/sites-available/atelierportage.com-le-ssl.conf:/etc/apache2/sites-enabled/atelierportage.com-le-ssl.conf # - /etc/apache2/sites-available/kefcon.ca-le-ssl.conf:/etc/apache2/sites-enabled/kefcon.ca-le-ssl.conf # - /etc/apache2/sites-available/ripplesandwaves.ca-le-ssl.conf:/etc/apache2/sites-enabled/ripplesandwaves.ca-le-ssl.conf # - /etc/apache2/sites-available/kathleensera.com-le-ssl.conf:/etc/apache2/sites-enabled/kathleensera.com-le-ssl.conf # networks: # - traefikproxy db: image: mariadb:10.5.26 container_name: mariadb restart: always environment: MARIADB_ROOT_PASSWORD: Lai5cieguP1Phah6 volumes: - /docker/mariadb:/var/lib/mysql networks: - traefikproxy adminer: image: adminer restart: always ports: - 8888:8080 networks: - traefikproxy traefik: image: "traefik:v3.1" container_name: "traefik" command: - "--core.defaultRuleSyntax=v2" - "--log.level=DEBUG" - "--api.dashboard=false" #- "--api.insecure=true" - "--providers.docker=true" - "--providers.docker.exposedbydefault=false" - "--entrypoints.websecure.address=:443" - "--entrypoints.web.address=:80" - "--entrypoints.web.http.redirections.entryPoint.to=websecure" - "--entrypoints.web.http.redirections.entryPoint.scheme=https" - "--certificatesresolvers.myresolver.acme.dnschallenge=true" - "--certificatesresolvers.myresolver.acme.email=dj@d-jorgensen.com" - "--certificatesresolvers.myresolver.acme.storage=/letsencrypt/acmewildcard.json" - "--certificatesresolvers.myresolver.acme.dnschallenge.provider=cloudflare" - "--certificatesresolvers.myresolver.acme.dnschallenge.resolvers=1.1.1.1:53" labels: - "traefik.enable=true" - "traefik.http.routers.dj.ls.domains[0].main=d-jorgensen.com" - "traefik.http.routers.dj.tls.domains[0].sans=*.d-jorgensen.com" - "traefik.http.routers.dj.tls.certresolver=myresolver" - "traefik.http.routers.ap.tls.domains[0].main=atelierportage.com" - "traefik.http.routers.ap.tls.domains[0].sans=*.atelierportage.com" - "traefik.http.routers.ap.tls.certresolver=myresolver" - "traefik.http.routers.rp.tls.domains[0].main=ripplesandwaves.com" - "traefik.http.routers.rp.tls.domains[0].sans=*.ripplesandwaves.com" - "traefik.http.routers.rp.tls.certresolver=myresolver" - "traefik.http.routers.kefcon.tls.domains[0].main=kefcon.ca" - "traefik.http.routers.kefcon.tls.domains[0].sans=*.kefcon.ca" - "traefik.http.routers.kefcon.tls.certresolver=myresolver" - "traefik.http.routers.denby.tls.domains[0].main=denbyjorgensen.com" - "traefik.http.routers.denby.tls.domains[0].sans=*.denbyjorgensen.com" - "traefik.http.routers.denby.tls.certresolver=myresolver" - "traefik.http.routers.ks.tls.domains[0].main=kathleensera.com" - "traefik.http.routers.ks.tls.domains[0].sans=*.kathleensera.com" - "traefik.http.routers.ks.tls.certresolver=myresolver" #HTTP - "traefik.http.routers.dj-web.entrypoints=web" - "traefik.http.routers.dj-web.rule=Host(`d-jorgensen.com`)" - "traefik.http.routers.dj-web.middlewares=ap-web-https-redirect" - "traefik.http.middlewares.dj-web-https-redirect.redirectscheme.scheme=https" # Https - "traefik.http.routers.dj-web-secure.entrypoints=websecure" - "traefik.http.routers.dj-web-secure.rule=Host(`d-jorgensen.com`)" - "traefik.http.routers.dj-web-secure.tls=true" - "traefik.http.routers.dj-web-secure.tls.certresolver=myresolver" #HTTP - "traefik.http.routers.ap-web.entrypoints=web" - "traefik.http.routers.ap-web.rule=Host(`atelierportage.com`)" - "traefik.http.routers.ap-web.middlewares=ap-web-https-redirect" - "traefik.http.middlewares.ap-web-https-redirect.redirectscheme.scheme=https" # Https - "traefik.http.routers.ap-web-secure.entrypoints=websecure" - "traefik.http.routers.ap-web-secure.rule=Host(`atelierportage.com`)" - "traefik.http.routers.ap-web-secure.tls=true" - "traefik.http.routers.ap-web-secure.tls.certresolver=myresolver" #HTTP - "traefik.http.routers.rp-web.entrypoints=web" - "traefik.http.routers.rp-web.rule=Host(`ripplesandwaves.com`)" - "traefik.http.routers.rp-web.middlewares=ap-web-https-redirect" - "traefik.http.middlewares.rp-web-https-redirect.redirectscheme.scheme=https" # Https - "traefik.http.routers.rp-web-secure.entrypoints=websecure" - "traefik.http.routers.rp-web-secure.rule=Host(`ripplesandwaves.com`)" - "traefik.http.routers.rp-web-secure.tls=true" - "traefik.http.routers.rp-web-secure.tls.certresolver=myresolver" #HTTP - "traefik.http.routers.kef-web.entrypoints=web" - "traefik.http.routers.kef-web.rule=Host(`kefcon.ca`)" - "traefik.http.routers.kef-web.middlewares=ap-web-https-redirect" - "traefik.http.middlewares.kef-web-https-redirect.redirectscheme.scheme=https" # Https - "traefik.http.routers.kef-web-secure.entrypoints=websecure" - "traefik.http.routers.kef-web-secure.rule=Host(`kefcon.ca`)" - "traefik.http.routers.kef-web-secure.tls=true" - "traefik.http.routers.kef-web-secure.tls.certresolver=myresolver" #HTTP - "traefik.http.routers.denby-web.entrypoints=web" - "traefik.http.routers.denby-web.rule=Host(`denbyjorgensen.com`)" - "traefik.http.routers.denby-web.middlewares=ap-web-https-redirect" - "traefik.http.middlewares.denby-web-https-redirect.redirectscheme.scheme=https" # Https - "traefik.http.routers.denby-web-secure.entrypoints=websecure" - "traefik.http.routers.denby-web-secure.rule=Host(`denbyjorgensen.com`)" - "traefik.http.routers.denby-web-secure.tls=true" - "traefik.http.routers.denby-web-secure.tls.certresolver=myresolver" #HTTP - "traefik.http.routers.ks-web.entrypoints=web" - "traefik.http.routers.ks-web.rule=Host(`kathleensera.com`)" - "traefik.http.routers.ks-web.middlewares=ap-web-https-redirect" - "traefik.http.middlewares.ks-web-https-redirect.redirectscheme.scheme=https" # Https - "traefik.http.routers.ks-web-secure.entrypoints=websecure" - "traefik.http.routers.ks-web-secure.rule=Host(`kathleensera.com`)" - "traefik.http.routers.ks-web-secure.tls=true" - "traefik.http.routers.ks-web-secure.tls.certresolver=myresolver" ports: - "80:80" - "443:443" - "8088:8080" environment: - CF_API_EMAIL=dj@d-jorgensen.com - CF_DNS_API_TOKEN=Uh69ING68kV9hfQDAXXBUUyo1PJrI9PNcjWrOQNq volumes: - "/docker/letsencrypt:/letsencrypt" - "/var/run/docker.sock:/var/run/docker.sock:ro" networks: - traefikproxy networks: traefikproxy: external: true