diff --git a/stack.staging.yml b/stack.staging.yml index 885dac3..4cef3b1 100644 --- a/stack.staging.yml +++ b/stack.staging.yml @@ -1,49 +1,67 @@ -networks: - traefik: - external: true - portainer_network: - driver: overlay - -volumes: - portainer_agent_data: - driver: local - services: - portainer: - image: git.nixc.us/nixius/portainer:staging-portainer - volumes: - - /var/run/docker.sock:/var/run/docker.sock - - /mnt/tank/persist/nixc.us/portainer/data:/data - - /etc/localtime:/etc/localtime:ro + postiz-postgres: + image: postgres:17-alpine + environment: + POSTGRES_PASSWORD: postiz-password + POSTGRES_USER: postiz-user + POSTGRES_DB: postiz-db-local + # volumes: + # - /mnt/tank/persist/nixc.us/postiz/production/postiz-postgres:/var/lib/postgresql/data + networks: + - default deploy: placement: constraints: - node.hostname == macmini14 - replicas: 1 - labels: - traefik.enable: "true" - traefik.http.routers.portainer.rule: Host(`portainer.nixc.us`) - traefik.http.routers.portainer.entrypoints: websecure - traefik.http.routers.portainer.service: portainer - traefik.http.routers.portainer.tls: "true" - traefik.http.routers.portainer.tls.certresolver: letsencryptresolver - traefik.http.services.portainer.loadbalancer.server.port: 9443 - traefik.docker.network: traefik - traefik.http.routers.portainer.middlewares: authelia_authelia@docker + + postiz-keydb: + image: eqalpha/keydb:latest + # volumes: + # - /mnt/tank/persist/nixc.us/postiz/production/postiz-keydb:/data + networks: + - default + deploy: + placement: + constraints: + - node.hostname == macmini14 + + postiz: + image: ghcr.io/gitroomhq/postiz-app:latest + environment: + MAIN_URL: "https://postiz.nixc.us" + FRONTEND_URL: "https://postiz.nixc.us" + NEXT_PUBLIC_BACKEND_URL: "https://postiz.nixc.us/api" + JWT_SECRET: "zKdyVqnsLx8PrGKnFUz9AnSjrcu003kuzxBpHiNI6MU=" + + DATABASE_URL: "postgresql://postiz-user:postiz-password@postiz-postgres:5432/postiz-db-local" + REDIS_URL: "redis://postiz-keydb:6379" + + BACKEND_INTERNAL_URL: "http://localhost:3000" + IS_GENERAL: "true" + STORAGE_PROVIDER: "local" + UPLOAD_DIRECTORY: "/uploads" + NEXT_PUBLIC_UPLOAD_DIRECTORY: "/uploads" + # volumes: + # - /mnt/tank/persist/nixc.us/postiz/production/config:/config + # - /mnt/tank/persist/nixc.us/postiz/production/uploads:/uploads networks: - traefik - - portainer_network - - portainer_agent: - image: git.nixc.us/nixius/portainer:staging-agent - environment: - - AGENT_CLUSTER_ADDR=portainer - volumes: - - /var/run/docker.sock:/var/run/docker.sock - - portainer_agent_data:/data + - default deploy: - mode: global labels: - - "traefik.enable=false" - networks: - - portainer_network \ No newline at end of file + traefik.docker.network: traefik + traefik.enable: "true" + traefik.http.routers.postiz-staging.entrypoints: "websecure" + traefik.http.routers.postiz-staging.rule: Host(`postiz.nixc.us`) + traefik.http.routers.postiz-staging.service: "postiz-staging" + traefik.http.routers.postiz-staging.tls: "true" + traefik.http.routers.postiz-staging.tls.certresolver: "letsencryptresolver" + traefik.http.services.postiz-staging.loadbalancer.server.port: "5000" + placement: + constraints: + - node.hostname == macmini14 + +networks: + default: + traefik: + external: true