mirror of
https://github.com/frappe/frappe_docker.git
synced 2025-01-24 23:58:27 +00:00
Update installation (overrides)
This commit is contained in:
parent
f48d632441
commit
3251b093a4
@ -1,42 +0,0 @@
|
|||||||
version: "3"
|
|
||||||
|
|
||||||
services:
|
|
||||||
redis-cache:
|
|
||||||
image: redis:latest
|
|
||||||
restart: on-failure
|
|
||||||
volumes:
|
|
||||||
- redis-cache-vol:/data
|
|
||||||
|
|
||||||
redis-queue:
|
|
||||||
image: redis:latest
|
|
||||||
restart: on-failure
|
|
||||||
volumes:
|
|
||||||
- redis-queue-vol:/data
|
|
||||||
|
|
||||||
redis-socketio:
|
|
||||||
image: redis:latest
|
|
||||||
restart: on-failure
|
|
||||||
volumes:
|
|
||||||
- redis-socketio-vol:/data
|
|
||||||
|
|
||||||
mariadb:
|
|
||||||
image: mariadb:10.6
|
|
||||||
restart: on-failure
|
|
||||||
command:
|
|
||||||
- --character-set-server=utf8mb4
|
|
||||||
- --collation-server=utf8mb4_unicode_ci
|
|
||||||
- --skip-character-set-client-handshake
|
|
||||||
- --skip-innodb-read-only-compressed # Temporary fix for MariaDB 10.6
|
|
||||||
environment:
|
|
||||||
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
|
|
||||||
# Sometimes db initialization takes longer than 10 seconds and site-creator goes away.
|
|
||||||
# Frappe doesn't use CONVERT_TZ() function that requires time zone info, so we can just skip it.
|
|
||||||
- MYSQL_INITDB_SKIP_TZINFO=1
|
|
||||||
volumes:
|
|
||||||
- mariadb-vol:/var/lib/mysql
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
mariadb-vol:
|
|
||||||
redis-cache-vol:
|
|
||||||
redis-queue-vol:
|
|
||||||
redis-socketio-vol:
|
|
@ -1,123 +0,0 @@
|
|||||||
version: '3'
|
|
||||||
|
|
||||||
services:
|
|
||||||
[app]-assets:
|
|
||||||
image: [app]-assets
|
|
||||||
build:
|
|
||||||
context: ../build/[app]-nginx
|
|
||||||
restart: on-failure
|
|
||||||
environment:
|
|
||||||
- FRAPPE_PY=[app]-python
|
|
||||||
- FRAPPE_PY_PORT=8000
|
|
||||||
- FRAPPE_SOCKETIO=frappe-socketio
|
|
||||||
- SOCKETIO_PORT=9000
|
|
||||||
- LETSENCRYPT_HOST=${SITES}
|
|
||||||
- VIRTUAL_HOST=${SITES}
|
|
||||||
- LETSENCRYPT_EMAIL=${LETSENCRYPT_EMAIL}
|
|
||||||
depends_on:
|
|
||||||
- [app]-python
|
|
||||||
- frappe-socketio
|
|
||||||
- frappe-worker-default
|
|
||||||
- frappe-worker-long
|
|
||||||
- frappe-worker-short
|
|
||||||
links:
|
|
||||||
- [app]-python
|
|
||||||
- frappe-socketio
|
|
||||||
- frappe-worker-default
|
|
||||||
- frappe-worker-long
|
|
||||||
- frappe-worker-short
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/var/www/html/sites:rw
|
|
||||||
- assets-vol:/assets:rw
|
|
||||||
|
|
||||||
[app]-python:
|
|
||||||
image: [app]-worker
|
|
||||||
build:
|
|
||||||
context: ../build/[app]-worker
|
|
||||||
restart: on-failure
|
|
||||||
environment:
|
|
||||||
- MARIADB_HOST=${MARIADB_HOST}
|
|
||||||
- REDIS_CACHE=redis-cache:6379
|
|
||||||
- REDIS_QUEUE=redis-queue:6379
|
|
||||||
- REDIS_SOCKETIO=redis-socketio:6379
|
|
||||||
- SOCKETIO_PORT=9000
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
- assets-vol:/home/frappe/frappe-bench/sites/assets:rw
|
|
||||||
|
|
||||||
frappe-socketio:
|
|
||||||
image: frappe/frappe-socketio:${FRAPPE_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
depends_on:
|
|
||||||
- redis-socketio
|
|
||||||
links:
|
|
||||||
- redis-socketio
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
|
|
||||||
frappe-worker-default:
|
|
||||||
image: [app]-worker
|
|
||||||
restart: on-failure
|
|
||||||
command: worker
|
|
||||||
depends_on:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
links:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
|
|
||||||
frappe-worker-short:
|
|
||||||
image: [app]-worker
|
|
||||||
restart: on-failure
|
|
||||||
command: worker
|
|
||||||
environment:
|
|
||||||
- WORKER_TYPE=short
|
|
||||||
depends_on:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
links:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
|
|
||||||
frappe-worker-long:
|
|
||||||
image: [app]-worker
|
|
||||||
restart: on-failure
|
|
||||||
command: worker
|
|
||||||
environment:
|
|
||||||
- WORKER_TYPE=long
|
|
||||||
depends_on:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
links:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
|
|
||||||
frappe-schedule:
|
|
||||||
image: [app]-worker
|
|
||||||
restart: on-failure
|
|
||||||
command: schedule
|
|
||||||
depends_on:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
links:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
assets-vol:
|
|
||||||
sites-vol:
|
|
||||||
logs-vol:
|
|
@ -1,120 +0,0 @@
|
|||||||
version: "3"
|
|
||||||
|
|
||||||
services:
|
|
||||||
erpnext-nginx:
|
|
||||||
image: frappe/erpnext-nginx:${ERPNEXT_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
environment:
|
|
||||||
- FRAPPE_PY=erpnext-python
|
|
||||||
- FRAPPE_PY_PORT=8000
|
|
||||||
- FRAPPE_SOCKETIO=frappe-socketio
|
|
||||||
- SOCKETIO_PORT=9000
|
|
||||||
- LETSENCRYPT_HOST=${SITES}
|
|
||||||
- VIRTUAL_HOST=${SITES}
|
|
||||||
- LETSENCRYPT_EMAIL=${LETSENCRYPT_EMAIL}
|
|
||||||
depends_on:
|
|
||||||
- erpnext-python
|
|
||||||
- frappe-socketio
|
|
||||||
- frappe-worker-default
|
|
||||||
- frappe-worker-long
|
|
||||||
- frappe-worker-short
|
|
||||||
links:
|
|
||||||
- erpnext-python
|
|
||||||
- frappe-socketio
|
|
||||||
- frappe-worker-default
|
|
||||||
- frappe-worker-long
|
|
||||||
- frappe-worker-short
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/var/www/html/sites:rw
|
|
||||||
- assets-vol:/assets:rw
|
|
||||||
|
|
||||||
erpnext-python:
|
|
||||||
image: frappe/erpnext-worker:${ERPNEXT_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
environment:
|
|
||||||
- MARIADB_HOST=${MARIADB_HOST}
|
|
||||||
- REDIS_CACHE=redis-cache:6379
|
|
||||||
- REDIS_QUEUE=redis-queue:6379
|
|
||||||
- REDIS_SOCKETIO=redis-socketio:6379
|
|
||||||
- SOCKETIO_PORT=9000
|
|
||||||
- AUTO_MIGRATE=1
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- assets-vol:/home/frappe/frappe-bench/sites/assets:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
|
|
||||||
frappe-socketio:
|
|
||||||
image: frappe/frappe-socketio:${FRAPPE_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
depends_on:
|
|
||||||
- redis-socketio
|
|
||||||
links:
|
|
||||||
- redis-socketio
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
|
|
||||||
frappe-worker-default:
|
|
||||||
image: frappe/erpnext-worker:${ERPNEXT_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
command: worker
|
|
||||||
depends_on:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
links:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
|
|
||||||
frappe-worker-short:
|
|
||||||
image: frappe/erpnext-worker:${ERPNEXT_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
command: worker
|
|
||||||
environment:
|
|
||||||
- WORKER_TYPE=short
|
|
||||||
depends_on:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
links:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
|
|
||||||
frappe-worker-long:
|
|
||||||
image: frappe/erpnext-worker:${ERPNEXT_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
command: worker
|
|
||||||
environment:
|
|
||||||
- WORKER_TYPE=long
|
|
||||||
depends_on:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
links:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
|
|
||||||
frappe-schedule:
|
|
||||||
image: frappe/erpnext-worker:${ERPNEXT_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
command: schedule
|
|
||||||
depends_on:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
links:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
assets-vol:
|
|
||||||
sites-vol:
|
|
||||||
logs-vol:
|
|
@ -1,120 +0,0 @@
|
|||||||
version: "3"
|
|
||||||
|
|
||||||
services:
|
|
||||||
frappe-nginx:
|
|
||||||
image: frappe/frappe-nginx:${FRAPPE_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
environment:
|
|
||||||
- FRAPPE_PY=frappe-python
|
|
||||||
- FRAPPE_PY_PORT=8000
|
|
||||||
- FRAPPE_SOCKETIO=frappe-socketio
|
|
||||||
- SOCKETIO_PORT=9000
|
|
||||||
- LETSENCRYPT_HOST=${SITES}
|
|
||||||
- VIRTUAL_HOST=${SITES}
|
|
||||||
- LETSENCRYPT_EMAIL=${LETSENCRYPT_EMAIL}
|
|
||||||
depends_on:
|
|
||||||
- frappe-python
|
|
||||||
- frappe-socketio
|
|
||||||
- frappe-worker-default
|
|
||||||
- frappe-worker-long
|
|
||||||
- frappe-worker-short
|
|
||||||
links:
|
|
||||||
- frappe-python
|
|
||||||
- frappe-socketio
|
|
||||||
- frappe-worker-default
|
|
||||||
- frappe-worker-long
|
|
||||||
- frappe-worker-short
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/var/www/html/sites:rw
|
|
||||||
- assets-vol:/assets:rw
|
|
||||||
|
|
||||||
frappe-python:
|
|
||||||
image: frappe/frappe-worker:${FRAPPE_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
environment:
|
|
||||||
- MARIADB_HOST=${MARIADB_HOST}
|
|
||||||
- REDIS_CACHE=redis-cache:6379
|
|
||||||
- REDIS_QUEUE=redis-queue:6379
|
|
||||||
- REDIS_SOCKETIO=redis-socketio:6379
|
|
||||||
- SOCKETIO_PORT=9000
|
|
||||||
- AUTO_MIGRATE=1
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
- assets-vol:/home/frappe/frappe-bench/sites/assets:rw
|
|
||||||
|
|
||||||
frappe-socketio:
|
|
||||||
image: frappe/frappe-socketio:${FRAPPE_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
depends_on:
|
|
||||||
- redis-socketio
|
|
||||||
links:
|
|
||||||
- redis-socketio
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
|
|
||||||
frappe-worker-default:
|
|
||||||
image: frappe/frappe-worker:${FRAPPE_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
command: worker
|
|
||||||
depends_on:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
links:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
|
|
||||||
frappe-worker-short:
|
|
||||||
image: frappe/frappe-worker:${FRAPPE_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
command: worker
|
|
||||||
environment:
|
|
||||||
- WORKER_TYPE=short
|
|
||||||
depends_on:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
links:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
|
|
||||||
frappe-worker-long:
|
|
||||||
image: frappe/frappe-worker:${FRAPPE_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
command: worker
|
|
||||||
environment:
|
|
||||||
- WORKER_TYPE=long
|
|
||||||
depends_on:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
links:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
|
|
||||||
frappe-schedule:
|
|
||||||
image: frappe/frappe-worker:${FRAPPE_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
command: schedule
|
|
||||||
depends_on:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
links:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- logs-vol:/home/frappe/frappe-bench/logs:rw
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
assets-vol:
|
|
||||||
sites-vol:
|
|
||||||
logs-vol:
|
|
@ -1,6 +0,0 @@
|
|||||||
version: "3"
|
|
||||||
|
|
||||||
networks:
|
|
||||||
default:
|
|
||||||
external:
|
|
||||||
name: webproxy
|
|
@ -1,6 +0,0 @@
|
|||||||
version: "3"
|
|
||||||
|
|
||||||
services:
|
|
||||||
erpnext-nginx:
|
|
||||||
ports:
|
|
||||||
- "80:8080"
|
|
@ -1,165 +0,0 @@
|
|||||||
version: "3"
|
|
||||||
|
|
||||||
services:
|
|
||||||
traefik:
|
|
||||||
image: "traefik:v2.2"
|
|
||||||
command:
|
|
||||||
- "--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=${LETSENCRYPT_EMAIL}"
|
|
||||||
- "--certificatesresolvers.myresolver.acme.storage=/letsencrypt/acme.json"
|
|
||||||
labels:
|
|
||||||
# enable traefik
|
|
||||||
- "traefik.enable=true"
|
|
||||||
# global redirect to https for production only
|
|
||||||
- "${HTTPS_REDIRECT_RULE_LABEL}"
|
|
||||||
- "${HTTPS_REDIRECT_ENTRYPOINT_LABEL}"
|
|
||||||
- "${HTTPS_REDIRECT_MIDDLEWARE_LABEL}"
|
|
||||||
# middleware redirect for production only
|
|
||||||
- "${HTTPS_USE_REDIRECT_MIDDLEWARE_LABEL}"
|
|
||||||
ports:
|
|
||||||
- "80:80"
|
|
||||||
- "443:443"
|
|
||||||
volumes:
|
|
||||||
- cert-vol:/letsencrypt
|
|
||||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
|
||||||
|
|
||||||
frappe-nginx:
|
|
||||||
image: frappe/frappe-nginx:${FRAPPE_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
environment:
|
|
||||||
- FRAPPE_PY=frappe-python
|
|
||||||
- FRAPPE_PY_PORT=8000
|
|
||||||
- FRAPPE_SOCKETIO=frappe-socketio
|
|
||||||
- SOCKETIO_PORT=9000
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.routers.frappe-nginx.rule=Host(${SITES})"
|
|
||||||
- "${ENTRYPOINT_LABEL}"
|
|
||||||
- "${CERT_RESOLVER_LABEL}"
|
|
||||||
- "traefik.http.services.frappe-nginx.loadbalancer.server.port=8080"
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/var/www/html/sites:rw
|
|
||||||
- assets-vol:/assets:rw
|
|
||||||
|
|
||||||
frappe-python:
|
|
||||||
image: frappe/frappe-worker:${FRAPPE_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
environment:
|
|
||||||
- POSTGRES_HOST=${POSTGRES_HOST}
|
|
||||||
- DB_PORT=5432
|
|
||||||
- REDIS_CACHE=redis-cache:6379
|
|
||||||
- REDIS_QUEUE=redis-queue:6379
|
|
||||||
- REDIS_SOCKETIO=redis-socketio:6379
|
|
||||||
- SOCKETIO_PORT=9000
|
|
||||||
- AUTO_MIGRATE=1
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
- assets-vol:/home/frappe/frappe-bench/sites/assets:rw
|
|
||||||
|
|
||||||
frappe-socketio:
|
|
||||||
image: frappe/frappe-socketio:${FRAPPE_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
depends_on:
|
|
||||||
- redis-socketio
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
|
|
||||||
frappe-worker-default:
|
|
||||||
image: frappe/frappe-worker:${FRAPPE_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
command: worker
|
|
||||||
depends_on:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
|
|
||||||
frappe-worker-short:
|
|
||||||
image: frappe/frappe-worker:${FRAPPE_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
command: worker
|
|
||||||
environment:
|
|
||||||
- WORKER_TYPE=short
|
|
||||||
depends_on:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
|
|
||||||
frappe-worker-long:
|
|
||||||
image: frappe/frappe-worker:${FRAPPE_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
command: worker
|
|
||||||
environment:
|
|
||||||
- WORKER_TYPE=long
|
|
||||||
depends_on:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
|
|
||||||
frappe-schedule:
|
|
||||||
image: frappe/frappe-worker:${FRAPPE_VERSION}
|
|
||||||
restart: on-failure
|
|
||||||
command: schedule
|
|
||||||
depends_on:
|
|
||||||
- redis-queue
|
|
||||||
- redis-cache
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
|
|
||||||
redis-cache:
|
|
||||||
image: redis:latest
|
|
||||||
restart: on-failure
|
|
||||||
volumes:
|
|
||||||
- redis-cache-vol:/data
|
|
||||||
|
|
||||||
redis-queue:
|
|
||||||
image: redis:latest
|
|
||||||
restart: on-failure
|
|
||||||
volumes:
|
|
||||||
- redis-queue-vol:/data
|
|
||||||
|
|
||||||
redis-socketio:
|
|
||||||
image: redis:latest
|
|
||||||
restart: on-failure
|
|
||||||
volumes:
|
|
||||||
- redis-socketio-vol:/data
|
|
||||||
|
|
||||||
postgresql:
|
|
||||||
image: postgres:11.8
|
|
||||||
restart: on-failure
|
|
||||||
environment:
|
|
||||||
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
|
||||||
volumes:
|
|
||||||
- postgresql-vol:/var/lib/postgresql/data
|
|
||||||
|
|
||||||
site-creator:
|
|
||||||
image: frappe/frappe-worker:${FRAPPE_VERSION}
|
|
||||||
restart: "no"
|
|
||||||
command: new
|
|
||||||
depends_on:
|
|
||||||
- frappe-python
|
|
||||||
environment:
|
|
||||||
- POSTGRES_HOST=${POSTGRES_HOST}
|
|
||||||
- SITE_NAME=${SITE_NAME}
|
|
||||||
- DB_ROOT_USER=${DB_ROOT_USER}
|
|
||||||
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
|
||||||
- ADMIN_PASSWORD=${ADMIN_PASSWORD}
|
|
||||||
- INSTALL_APPS=${INSTALL_APPS}
|
|
||||||
volumes:
|
|
||||||
- sites-vol:/home/frappe/frappe-bench/sites:rw
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
postgresql-vol:
|
|
||||||
redis-cache-vol:
|
|
||||||
redis-queue-vol:
|
|
||||||
redis-socketio-vol:
|
|
||||||
assets-vol:
|
|
||||||
sites-vol:
|
|
||||||
cert-vol:
|
|
@ -1,14 +0,0 @@
|
|||||||
LETSENCRYPT_EMAIL=email@example.com
|
|
||||||
FRAPPE_VERSION=edge
|
|
||||||
POSTGRES_HOST=postgresql
|
|
||||||
POSTGRES_PASSWORD=admin
|
|
||||||
SITE_NAME=mysite.localhost
|
|
||||||
SITES=`mysite.localhost`
|
|
||||||
DB_ROOT_USER=postgres
|
|
||||||
ADMIN_PASSWORD=admin
|
|
||||||
ENTRYPOINT_LABEL=traefik.http.routers.erpnext-nginx.entrypoints=web
|
|
||||||
CERT_RESOLVER_LABEL=erpnext.local.no-cert-resolver
|
|
||||||
HTTPS_REDIRECT_RULE_LABEL=erpnext.local.no-redirect-rule
|
|
||||||
HTTPS_REDIRECT_ENTRYPOINT_LABEL=erpnext.local.no-entrypoint
|
|
||||||
HTTPS_REDIRECT_MIDDLEWARE_LABEL=erpnext.local.no-middleware
|
|
||||||
HTTPS_USE_REDIRECT_MIDDLEWARE_LABEL=erpnext.local-no-redirect-middleware
|
|
@ -1,14 +0,0 @@
|
|||||||
LETSENCRYPT_EMAIL=email@example.com
|
|
||||||
FRAPPE_VERSION=edge
|
|
||||||
POSTGRES_HOST=postgresql
|
|
||||||
POSTGRES_PASSWORD=admin
|
|
||||||
SITE_NAME=erp.example.com
|
|
||||||
SITES=`erp.example.com`
|
|
||||||
DB_ROOT_USER=postgres
|
|
||||||
ADMIN_PASSWORD=admin
|
|
||||||
ENTRYPOINT_LABEL=traefik.http.routers.erpnext-nginx.entrypoints=websecure
|
|
||||||
CERT_RESOLVER_LABEL=traefik.http.routers.erpnext-nginx.tls.certresolver=myresolver
|
|
||||||
HTTPS_REDIRECT_RULE_LABEL=traefik.http.routers.http-catchall.rule=hostregexp(`{host:.+}`)
|
|
||||||
HTTPS_REDIRECT_ENTRYPOINT_LABEL=traefik.http.routers.http-catchall.entrypoints=web
|
|
||||||
HTTPS_REDIRECT_MIDDLEWARE_LABEL=traefik.http.routers.http-catchall.middlewares=redirect-to-https
|
|
||||||
HTTPS_USE_REDIRECT_MIDDLEWARE_LABEL=traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https
|
|
@ -1,6 +0,0 @@
|
|||||||
version: "3"
|
|
||||||
|
|
||||||
services:
|
|
||||||
frappe-nginx:
|
|
||||||
ports:
|
|
||||||
- "80:8080"
|
|
28
overrides/compose.erpnext.yml
Normal file
28
overrides/compose.erpnext.yml
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
version: "3.9"
|
||||||
|
|
||||||
|
services:
|
||||||
|
backend:
|
||||||
|
image: frappe/erpnext-backend:${ERPNEXT_VERSION}
|
||||||
|
volumes:
|
||||||
|
- assets:/home/frappe/frappe-bench/sites/assets
|
||||||
|
|
||||||
|
frontend:
|
||||||
|
image: frappe/erpnext-frontend:${ERPNEXT_VERSION}
|
||||||
|
volumes:
|
||||||
|
- assets:/usr/share/nginx/html/assets
|
||||||
|
|
||||||
|
queue-short:
|
||||||
|
image: frappe/erpnext-backend:${ERPNEXT_VERSION}
|
||||||
|
|
||||||
|
queue-default:
|
||||||
|
image: frappe/erpnext-backend:${ERPNEXT_VERSION}
|
||||||
|
|
||||||
|
queue-long:
|
||||||
|
image: frappe/erpnext-backend:${ERPNEXT_VERSION}
|
||||||
|
|
||||||
|
scheduler:
|
||||||
|
image: frappe/erpnext-backend:${ERPNEXT_VERSION}
|
||||||
|
|
||||||
|
# ERPNext requires local assets access (Frappe does not)
|
||||||
|
volumes:
|
||||||
|
assets:
|
29
overrides/compose.https.yml
Normal file
29
overrides/compose.https.yml
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
version: "3.9"
|
||||||
|
|
||||||
|
services:
|
||||||
|
frontend:
|
||||||
|
labels:
|
||||||
|
- traefik.enable=true
|
||||||
|
- traefik.http.services.frontend.loadbalancer.server.port=80
|
||||||
|
- traefik.http.routers.frontend-http.entrypoints=websecure
|
||||||
|
- traefik.http.routers.frontend-http.tls.certresolver=main-resolver
|
||||||
|
|
||||||
|
proxy:
|
||||||
|
command:
|
||||||
|
- --providers.docker=true
|
||||||
|
- --providers.docker.exposedbydefault=false
|
||||||
|
- --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}
|
||||||
|
- --certificatesResolvers.main-resolver.acme.storage=/letsencrypt/acme.json
|
||||||
|
ports:
|
||||||
|
- 443:443
|
||||||
|
volumes:
|
||||||
|
- cert:/letsencrypt
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
cert:
|
22
overrides/compose.postgres.yml
Normal file
22
overrides/compose.postgres.yml
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
version: "3.9"
|
||||||
|
|
||||||
|
services:
|
||||||
|
backend:
|
||||||
|
image: frappe/backend:${FRAPPE_VERSION}
|
||||||
|
environment:
|
||||||
|
DB_HOST: db
|
||||||
|
DB_PORT: 5432
|
||||||
|
depends_on:
|
||||||
|
- db
|
||||||
|
|
||||||
|
db:
|
||||||
|
image: postgres:14.1
|
||||||
|
healthcheck:
|
||||||
|
test: pg_isready
|
||||||
|
interval: 1s
|
||||||
|
retries: 15
|
||||||
|
command: []
|
||||||
|
environment:
|
||||||
|
POSTGRES_PASSWORD: ${DB_PASSWORD}
|
||||||
|
volumes:
|
||||||
|
- db:/var/lib/postgresql
|
Loading…
x
Reference in New Issue
Block a user