diff --git a/certificate-tracking/README.md b/certificate-tracking/README.md new file mode 100644 index 0000000..67acf93 --- /dev/null +++ b/certificate-tracking/README.md @@ -0,0 +1 @@ +docker stack deploy -c certificate-tracking.yml certificate-tracking diff --git a/certificate-tracking/certificate-tracking.yml b/certificate-tracking/certificate-tracking.yml new file mode 100644 index 0000000..2533c1b --- /dev/null +++ b/certificate-tracking/certificate-tracking.yml @@ -0,0 +1,74 @@ +version: "3.8" + +services: + certificate-tracking-api: + image: ghcr.io/emrekirman/certificate_tracker_api:latest + environment: + - MONGODB_URI=mongodb://admin:emre98836@mongodb:27017/certificate_tracking?authSource=admin + - JWT_SECRET=0HkItkUCJ08ihJ9f2XXX9Sbk+I8fOZnbX+RyuAYc6Jw9MuY6OKyUvB8zJHlJ/9agGIg5Sx5D3Pvr0UeZOmoIgA== + - MINIO_URL=http://minio:9000 + - MINIO_ACCESS_KEY=emrekirman + - MINIO_SECRET_KEY=eE24619840420* + - MINIO_BUCKET=certificate-tracking + networks: + - traefik-public + - minio_minio_network + - mongodb_backend + deploy: + replicas: 1 + restart_policy: + condition: on-failure + placement: + constraints: + - node.labels.platform == prod + update_config: + parallelism: 1 + order: start-first + labels: + - traefik.enable=true + - traefik.http.routers.cttracker.rule=Host(`ctapi.emrekirman.xyz`) + - traefik.http.routers.cttracker.entrypoints=websecure + - traefik.http.routers.cttracker.tls.certresolver=myresolver + - traefik.http.services.cttracker.loadbalancer.server.port=8080 + - traefik.http.routers.cttracker.service=cttracker + certificate-tracking-ui: + image: ghcr.io/emrekirman/certificate_tracker_ui:latest + environment: + - VITE_API_BASE_URL=/api + deploy: + replicas: 1 + update_config: + parallelism: 1 + delay: 10s + order: start-first + restart_policy: + condition: on-failure + delay: 5s + max_attempts: 3 + placement: + constraints: + - node.labels.platform == prod + resources: + limits: + cpus: '1' + memory: 512M + reservations: + cpus: '0.25' + memory: 256M + labels: + - traefik.enable=true + - traefik.http.routers.cttrackerui.rule=Host(`ct.emrekirman.xyz`) + - traefik.http.routers.cttrackerui.entrypoints=websecure + - traefik.http.routers.cttrackerui.tls.certresolver=myresolver + - traefik.http.services.cttrackerui.loadbalancer.server.port=80 + - traefik.http.routers.cttrackerui.service=cttrackerui + networks: + - traefik-public +networks: + traefik-public: + external: true + mongodb_backend-net: + external: true + minio_minio_network: + external: true +