diff --git a/WIP/wger/wger-beat.container b/WIP/wger/wger-beat.container new file mode 100644 index 0000000..cbb8472 --- /dev/null +++ b/WIP/wger/wger-beat.container @@ -0,0 +1,26 @@ +[Unit] +Description=Wger heartbeat +After=network-online.target +Requires=wger-worker.service + +[Service] +Restart=on-failure +TimeoutStartSec=900 + +[Install] +WantedBy=default.target + +[Container] +Image=docker.io/wger/server:latest +ContainerName=wger-beat +HostName=wger-beat +Exec=/start-beat + +Network=protonvpn + +Volume=/volumes/wger/home/wger/beat:/home/wger/beat + +Secret= + +Environment=./config/prod.env + diff --git a/WIP/wger/wger-cache.container b/WIP/wger/wger-cache.container new file mode 100644 index 0000000..4bd5c78 --- /dev/null +++ b/WIP/wger/wger-cache.container @@ -0,0 +1,37 @@ +[Unit] +Description= +After= + +[Service] +Restart=on-failure +TimeoutStartSec=900 + +[Install] +WantedBy=default.target + +[Container] +Image= +ContainerName= +HostName= + +Network= + +Volume= + +Secret= + +Environment= + cache: + image: redis + expose: + - 6379 + volumes: + - redis-data:/data + healthcheck: + test: redis-cli ping + interval: 10s + timeout: 5s + retries: 5 + start_period: 30s + restart: unless-stopped + diff --git a/WIP/wger/wger-db.container b/WIP/wger/wger-db.container new file mode 100644 index 0000000..e07bf45 --- /dev/null +++ b/WIP/wger/wger-db.container @@ -0,0 +1,27 @@ +[Unit] +Description=Wger database +After=network-online.target + +[Service] +Restart=on-failure +TimeoutStartSec=900 + +[Install] +WantedBy=default.target + +[Container] +Image=docker.io/postgres:15-alpine +ContainerName=wger-db +HostName=wger-db + +Network= +#PublishPort=5432 + +Volume=/volumes/wger/var/lib/postgresql/data:/var/lib/postgresql/data + +Secret= + +Environment=POSTGRES_USER=wger +Environment=POSTGRES_PASSWORD=wger +Environment=POSTGRES_DB=wger + diff --git a/WIP/wger/wger-nginx.container b/WIP/wger/wger-nginx.container new file mode 100644 index 0000000..334f473 --- /dev/null +++ b/WIP/wger/wger-nginx.container @@ -0,0 +1,38 @@ +[Unit] +Description=Wger static web server +After=network-online.target + +[Service] +Restart=on-failure +TimeoutStartSec=900 + +[Install] +WantedBy=default.target + +[Container] +Image=docker.io/nginx:stable +ContainerName=wger-nginx +HostName=wger-nginx + +Network=protonvpn +PublishPort=80 + +Volume=/volumes/wger/etc/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf +Volume=/volumes/wger/wger/static:/wger/static:ro +Volume=/volumes/wger/wger/media:/wger/media:ro + +Secret= + +Environment= + +volumes: + postgres-data: + celery-beat: + static: + media: + redis-data: + +networks: + default: + name: wger_network + diff --git a/WIP/wger/wger-worker.container b/WIP/wger/wger-worker.container new file mode 100644 index 0000000..217e455 --- /dev/null +++ b/WIP/wger/wger-worker.container @@ -0,0 +1,40 @@ +[Unit] +Description= +After= + +[Service] +Restart=on-failure +TimeoutStartSec=900 + +[Install] +WantedBy=default.target + +[Container] +Image= +ContainerName= +HostName= + +Network= + +Volume= + +Secret= + +Environment= + celery_worker: + image: wger/server:latest + command: /start-worker + env_file: + - ./config/prod.env + volumes: + - media:/home/wger/media + depends_on: + web: + condition: service_healthy + healthcheck: + test: celery -A wger inspect ping + interval: 10s + timeout: 5s + retries: 5 + start_period: 30s + diff --git a/WIP/wger/wger.container b/WIP/wger/wger.container new file mode 100644 index 0000000..3916633 --- /dev/null +++ b/WIP/wger/wger.container @@ -0,0 +1,26 @@ +[Unit] +Description=Fitness tracker +After=network-online.target +Requires=wger-db.service +Requires=wger-nginx.service + +[Service] +Restart=on-failure +TimeoutStartSec=900 + +[Install] +WantedBy=default.target + +[Container] +Image=docker.io/wger/server:latest +ContainerName=wger +HostName=wger + +Network=protonvpn +#PublishPort=8000 + +Volume=/volumes/wger/home/wger/static:/home/wger/static + +Secret= + +EnvironmentFile=./config/prod.env