diff options
Diffstat (limited to 'playbooks/roles/oci/templates/stacks/docker-compose.yml')
-rw-r--r-- | playbooks/roles/oci/templates/stacks/docker-compose.yml | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/playbooks/roles/oci/templates/stacks/docker-compose.yml b/playbooks/roles/oci/templates/stacks/docker-compose.yml new file mode 100644 index 0000000..8b40356 --- /dev/null +++ b/playbooks/roles/oci/templates/stacks/docker-compose.yml @@ -0,0 +1,48 @@ +services: + valkey: + image: valkey/valkey:8.0.2 + networks: + - oci + + oci: + image: ghcr.io/simple-registry/simple-registry:main + command: "server" + volumes: + - {{ oci_base }}/volumes/config.toml:/config.toml + - {{ oci_base }}/volumes/images:/images + environment: + - TZ={{ timezone }} + - DEPLOYMENT_TIME={{ deployment_time }} + - RUST_LOG=info + networks: + - proxy + - oci + healthcheck: + test: ["CMD", "/simple-registry", "scrub"] + timeout: 10s + interval: 30s + retries: 2 + start_period: 5s + deploy: + mode: replicated + update_config: + parallelism: 1 + failure_action: rollback + order: start-first + monitor: 5s + replicas: 1 + labels: + - traefik.enable=true + - traefik.swarm.network=proxy + - traefik.http.routers.oci.tls=true + - traefik.http.routers.oci.tls.certResolver=letsencrypt + - traefik.http.routers.oci.rule=Host(`{{ oci_domain }}`) + - traefik.http.routers.oci.entrypoints=websecure + - traefik.http.services.oci.loadbalancer.server.port=8000 + +networks: + oci: + attachable: true + driver: overlay + proxy: + external: true |