diff --git a/pwd.yml b/pwd.yml index 515fa983..6f8af115 100644 --- a/pwd.yml +++ b/pwd.yml @@ -1,6 +1,31 @@ version: "3" services: + traefik: + image: traefik:v2.11 + container_name: traefik + command: + - "--api.dashboard=true" + - "--api.insecure=true" + - "--providers.docker=true" + - "--providers.docker.exposedbydefault=false" + - "--entrypoints.web.address=:80" + - "--entrypoints.websecure.address=:443" + - "--certificatesresolvers.myresolver.acme.httpchallenge=true" + - "--certificatesresolvers.myresolver.acme.httpchallenge.entrypoint=web" + - "--certificatesresolvers.myresolver.acme.email=nastiar.dev@gmail.com" + - "--certificatesresolvers.myresolver.acme.storage=/letsencrypt/acme.json" + ports: + - "80:80" + - "443:443" + - "8081:8080" # optional: dashboard access + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + - traefik-letsencrypt:/letsencrypt + networks: + - frappe_network + restart: unless-stopped + backend: image: frappe/erpnext:v15.74.0 networks: @@ -77,7 +102,7 @@ services: fi done; echo "sites/common_site_config.json found"; - bench new-site --mariadb-user-host-login-scope='%' --admin-password=admin --db-root-username=root --db-root-password=admin --install-app erpnext --set-default frontend; + bench new-site --mariadb-user-host-login-scope='%' --admin-password=admin --db-root-username=root --db-root-password=admin --install-app erpnext --set-default erp-sb1.mitrabisnisdigital.com; db: image: mariadb:10.6 @@ -121,6 +146,12 @@ services: UPSTREAM_REAL_IP_RECURSIVE: "off" PROXY_READ_TIMEOUT: 120 CLIENT_MAX_BODY_SIZE: 50m + labels: + - "traefik.enable=true" + - "traefik.http.routers.erp.rule=Host(`erp-sb1.mitrabisnisdigital.com`)" + - "traefik.http.routers.erp.entrypoints=websecure" + - "traefik.http.routers.erp.tls.certresolver=myresolver" + - "traefik.http.services.erp.loadbalancer.server.port=8080" volumes: - sites:/home/frappe/frappe-bench/sites - logs:/home/frappe/frappe-bench/logs @@ -210,6 +241,7 @@ volumes: redis-queue-data: sites: logs: + traefik-letsencrypt: networks: frappe_network: