vm: apps.json and https-dynamic override

This commit is contained in:
Olivier Guntenaar 2025-11-06 12:18:07 +00:00
parent 473081a2ad
commit 0ee76bd055
3 changed files with 88 additions and 0 deletions

34
apps.json Normal file
View file

@ -0,0 +1,34 @@
[
{
"url": "https://github.com/frappe/erpnext",
"branch": "version-15"
},
{
"url": "https://github.com/Bamboi-tech/frappe_ecommerce_integrations",
"branch": "develop"
},
{
"url": "https://github.com/Bamboi-tech/frappe_kuehne_nagel_sftp",
"branch": "develop"
},
{
"url": "https://github.com/frappe/hrms",
"branch": "develop"
},
{
"url": "https://github.com/frappe/drive",
"branch": "develop"
},
{
"url": "https://github.com/frappe/payments",
"branch": "develop"
},
{
"url": "https://github.com/frappe/crm",
"branch": "develop"
},
{
"url": "https://github.com/frappe/insights",
"branch": "develop"
}
]

View file

@ -0,0 +1,12 @@
services:
backend:
volumes:
- assets:/home/frappe/frappe-bench/sites/assets
frontend:
volumes:
- assets:/home/frappe/frappe-bench/sites/assets:ro
volumes:
assets:
name: frappe_docker_assets

View file

@ -0,0 +1,42 @@
services:
frontend:
labels:
- traefik.enable=true
- traefik.http.services.frontend.loadbalancer.server.port=8080
- traefik.http.routers.frontend-http.entrypoints=websecure
- traefik.http.routers.frontend-http.tls.certresolver=main-resolver
- traefik.http.routers.frontend-http.rule=Host(${SITES:?List of sites not set})
proxy:
image: traefik:v2.11
restart: unless-stopped
command:
- --providers.docker=true
- --providers.docker.exposedbydefault=false
# ADD file provider:
- --providers.file.directory=/dynamic
- --providers.file.watch=true
- --entrypoints.web.address=:80
- --entrypoints.web.http.redirections.entrypoint.to=websecure
- --entrypoints.web.http.redirections.entrypoint.scheme=https
- --entrypoints.websecure.address=:443
- --certificatesResolvers.main-resolver.acme.httpChallenge=true
- --certificatesResolvers.main-resolver.acme.httpChallenge.entrypoint=web
- --certificatesResolvers.main-resolver.acme.email=${LETSENCRYPT_EMAIL:?No Let's Encrypt email set}
- --certificatesResolvers.main-resolver.acme.storage=/letsencrypt/acme.json
ports:
- ${HTTP_PUBLISH_PORT:-80}:80
- ${HTTPS_PUBLISH_PORT:-443}:443
volumes:
- cert-data:/letsencrypt
- /var/run/docker.sock:/var/run/docker.sock:ro
# Mount a folder for dynamic rules:
- /opt/traefik/dynamic:/dynamic:ro
# Make "host.docker.internal" resolve to the host on Linux:
extra_hosts:
- "host.docker.internal:host-gateway"
volumes:
cert-data: