corumfk production manifests ready

This commit is contained in:
emrekirman 2025-08-21 18:07:42 +03:00
parent 1e3b39af0f
commit 505c4c3a79

139
corum-fk/prod/corumfk.yml Normal file
View File

@ -0,0 +1,139 @@
version: '3.8'
services:
corum-fk-landing:
image: ghcr.io/emrekirman/corum-fk-landing:latest
networks:
- traefik-public
- corum-fk-network
deploy:
replicas: 3
placement:
constraints:
- node.role == manager
restart_policy:
condition: on-failure
labels:
- traefik.enable=true
- traefik.http.routers.cfklanding.rule=Host(`corumfk.com.tr`) || Host(`www.corumfk.com.tr`)
- traefik.http.routers.cfklanding.entrypoints=websecure
- traefik.http.routers.cfklanding.tls.certresolver=myresolver
- traefik.http.services.cfklanding.loadbalancer.server.port=3000
- traefik.http.routers.cfklanding.service=cfklanding
corum-fk-agent:
image: ghcr.io/emrekirman/corum-fk-agent:latest
networks:
- corum-fk-network
- traefik-public
deploy:
replicas: 1
restart_policy:
condition: on-failure
placement:
constraints:
- node.role == manager
labels:
- traefik.enable=true
- traefik.http.routers.cfkagent.rule=Host(`agent.corumfk.com.tr`)
- traefik.http.routers.cfkagent.entrypoints=websecure
- traefik.http.routers.cfkagent.tls.certresolver=myresolver
- traefik.http.services.cfkagent.loadbalancer.server.port=3001
- traefik.http.routers.cfkagent.service=cfkagent
corum-fk-redis:
image: redis:7.2
command: ["redis-server", "--requirepass", "98836", "--appendonly", "yes"]
networks:
- corum-fk-network
deploy:
mode: replicated
replicas: 1
restart_policy:
condition: on-failure
placement:
constraints:
- node.role == manager
# --- NEW: PostgreSQL ---
corum-fk-postgres:
image: postgres:15
environment:
POSTGRES_USER: strapi
POSTGRES_PASSWORD: 98836 # değiştir
POSTGRES_DB: strapi
volumes:
- corum-fk-pg-data:/var/lib/postgresql/data
networks:
- corum-fk-network
healthcheck:
test: ["CMD-SHELL", "pg_isready -U strapi -d strapi"]
interval: 10s
timeout: 5s
retries: 10
deploy:
replicas: 1
restart_policy:
condition: on-failure
placement:
constraints:
- node.role == manager
# --- NEW: Strapi ---
corum-fk-cms:
image: ghcr.io/emrekirman/corum-fk-cms:latest
environment:
NODE_ENV: production
# App
PORT: 1337
HOST: 0.0.0.0
URL: https://admin.corumfk.com.tr # Strapi'nin public URL'i
# Secrets (örnek değerler değiştirin)
APP_KEYS: "WRxkPQhgXqEjAzWLkL9yog==,FpS2Gg8lEb0GxZ3tQ/Hvmg==,GmvGMto4RsuQBIZspiTw8A==,rGuTufvILVv1VDNptw2wbA=="
API_TOKEN_SALT: "RTCb/edPuv9u/wENFNhA/Q=="
ADMIN_JWT_SECRET: "IA8hDF3ynrGdwApm75G/fA=="
JWT_SECRET: "cw5em010OuItllNrh/AJpA=="
# Database (PostgreSQL)
DATABASE_CLIENT: postgres
DATABASE_HOST: corum-fk-postgres
DATABASE_PORT: 5432
DATABASE_NAME: strapi
DATABASE_USERNAME: strapi
DATABASE_PASSWORD: 98836
DATABASE_SSL: "false"
PUBLIC_URL: https://admin.corumfk.com.tr
STRAPI_ADMIN_BACKEND_URL: https://admin.corumfk.com.tr
depends_on:
- corum-fk-postgres
volumes:
- corum-fk-cms-uploads:/public/uploads
networks:
- traefik-public
- corum-fk-network
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:1337/"]
interval: 30s
timeout: 5s
retries: 3
deploy:
replicas: 2
restart_policy:
condition: on-failure
placement:
constraints:
- node.role == manager
labels:
- traefik.enable=true
# Admin paneli ve Strapi'nin ihtiyaç duyduğu backend path'leri tek servise yönlendirilir.
- traefik.http.routers.cfkcms.rule=Host(`admin.corumfk.com.tr`)
- traefik.http.routers.cfkcms.entrypoints=websecure
- traefik.http.routers.cfkcms.tls.certresolver=myresolver
- traefik.http.services.cfkcms.loadbalancer.server.port=1337
- traefik.http.routers.cfkcms.service=cfkcms
networks:
traefik-public:
external: true
corum-fk-network:
volumes:
corum-fk-pg-data:
corum-fk-strapi-uploads:
corum-fk-cms-uploads: