From 0aa51664e060bb36f6530fc39c7048eac2ba10c1 Mon Sep 17 00:00:00 2001 From: emrekirman Date: Mon, 27 Oct 2025 07:29:44 +0000 Subject: [PATCH] rate limiting added and memory limit added for landing service --- corum-fk/prod/corumfk.yml | 29 ++++++++++++++++++++--------- 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/corum-fk/prod/corumfk.yml b/corum-fk/prod/corumfk.yml index 63aee2c..0024db2 100644 --- a/corum-fk/prod/corumfk.yml +++ b/corum-fk/prod/corumfk.yml @@ -12,6 +12,9 @@ services: - node.role == manager restart_policy: condition: on-failure + resources: + limits: + memory: 750M labels: - traefik.enable=true - traefik.http.routers.cfklanding.rule=Host(`corumfk.com.tr`) || Host(`www.corumfk.com.tr`) || Host(`arcacorumfk.com.tr`) || Host(`www.arcacorumfk.com.tr`) || Host(`arcacorumfk.com`) || Host(`www.arcacorumfk.com`) @@ -19,6 +22,11 @@ services: - traefik.http.routers.cfklanding.tls.certresolver=myresolver - traefik.http.services.cfklanding.loadbalancer.server.port=3000 - traefik.http.routers.cfklanding.service=cfklanding + - traefik.http.middlewares.cfklanding-ratelimit.rateLimit.average=100 + - traefik.http.middlewares.cfklanding-ratelimit.rateLimit.burst=200 + - traefik.http.middlewares.cfklanding-ratelimit.rateLimit.period=1s + - traefik.http.routers.cfklanding.middlewares=cfklanding-ratelimit + corum-fk-agent: image: ghcr.io/emrekirman/corum-fk-agent:latest networks: @@ -40,6 +48,11 @@ services: - traefik.http.routers.cfkagent.tls.certresolver=myresolver - traefik.http.services.cfkagent.loadbalancer.server.port=3001 - traefik.http.routers.cfkagent.service=cfkagent + - traefik.http.middlewares.cfkagent-ratelimit.rateLimit.average=50 + - traefik.http.middlewares.cfkagent-ratelimit.rateLimit.burst=100 + - traefik.http.middlewares.cfkagent-ratelimit.rateLimit.period=1s + - traefik.http.routers.cfkagent.middlewares=cfkagent-ratelimit + corum-fk-redis: image: redis:7.2 command: ["redis-server", "--requirepass", "98836", "--appendonly", "yes"] @@ -54,12 +67,11 @@ services: constraints: - node.role == manager - # --- NEW: PostgreSQL --- corum-fk-postgres: image: postgres:15 environment: POSTGRES_USER: strapi - POSTGRES_PASSWORD: 98836 # değiştir + POSTGRES_PASSWORD: 98836 POSTGRES_DB: strapi volumes: - corum-fk-pg-data:/var/lib/postgresql/data @@ -78,21 +90,17 @@ services: 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) + URL: https://admin.corumfk.com.tr 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 @@ -123,12 +131,15 @@ services: - 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 + - traefik.http.middlewares.cfkcms-ratelimit.rateLimit.average=40 + - traefik.http.middlewares.cfkcms-ratelimit.rateLimit.burst=80 + - traefik.http.middlewares.cfkcms-ratelimit.rateLimit.period=1s + - traefik.http.routers.cfkcms.middlewares=cfkcms-ratelimit networks: traefik-public: @@ -139,4 +150,4 @@ volumes: corum-fk-pg-data: corum-fk-strapi-uploads: corum-fk-cms-uploads: - corum-fk-aget-sqlite: \ No newline at end of file + corum-fk-aget-sqlite: