diff --git a/configs/deployment/docker-compose-app.production.yml b/configs/deployment/docker-compose-app.production.yml index 2db39316..7c78b604 100644 --- a/configs/deployment/docker-compose-app.production.yml +++ b/configs/deployment/docker-compose-app.production.yml @@ -16,7 +16,3 @@ services: restart: always cdn: restart: always - # nginx: - # restart: always - # volumes: - # - ./configs/nginx.production.conf:/etc/nginx/conf.d/default.conf diff --git a/configs/deployment/docker-compose-app.yml b/configs/deployment/docker-compose-app.yml index 7733d6c7..0da2e7ee 100644 --- a/configs/deployment/docker-compose-app.yml +++ b/configs/deployment/docker-compose-app.yml @@ -10,7 +10,6 @@ volumes: api-keys: services: - # Veritabanı migrasyonları için geçici servis (kapsam dışı) migrator: image: devops.sozsoft.com/kurs/kurs-platform-migrator:latest profiles: ["migrator"] @@ -20,15 +19,14 @@ services: networks: - db - # Backend API api: image: devops.sozsoft.com/kurs/kurs-platform-api:latest container_name: kurs-api - profiles: ["app"] + profiles: ["api"] environment: - ASPNETCORE_ENVIRONMENT=Dev ports: - - 8080:8080 # ⚠️ NGINX için eklendi + - 8080:8080 volumes: - cdn:/etc/api/cdn - api-keys:/root/.aspnet/DataProtection-Keys @@ -36,46 +34,26 @@ services: - db - default - # Frontend (UI) ui: image: devops.sozsoft.com/kurs/kurs-platform-ui:latest container_name: kurs-ui - profiles: ["app"] + profiles: ["ui"] ports: - - 3002:80 # ⚠️ UI uygulaması için dış port açıldı + - 3002:80 volumes: - /home/user/sozsoft.com:/etc/ssl/sozsoft.com:ro networks: - default - # Statik dosya sunucusu (CDN) cdn: image: tozlu/http-server:latest container_name: kurs-cdn - profiles: ["app"] + profiles: ["ui"] working_dir: /srv/http-server volumes: - cdn:/public:ro command: "/public -c10 --cors" ports: - - 8081:8080 # Dış:İç (doğru port eşlemesi) + - 8081:8080 networks: - default - - # NGINX konteyneri (opsiyonel - eğer sistemde yoksa) - # nginx: - # image: nginx:1.27-alpine - # container_name: kurs-nginx - # profiles: ["app"] - # ports: - # - 80:80 - # - 443:443 - # volumes: - # - ./configs/nginx.conf:/etc/nginx/conf.d/default.conf - # - ~/sozsoft.com:/etc/ssl/sozsoft.com:ro - # networks: - # - default - # depends_on: - # - api - # - cdn - # - ui diff --git a/configs/deployment/docker-compose-devops.yml b/configs/deployment/docker-compose-devops.yml index 517c2dcb..c22efce1 100644 --- a/configs/deployment/docker-compose-devops.yml +++ b/configs/deployment/docker-compose-devops.yml @@ -24,7 +24,7 @@ services: - USER_GID=1000 ports: - 222:22 - - 3000:3000 # ⚠️ Eklendi: HTTP arayüz için gerekli! + - 3000:3000 volumes: - ~/forgejo/data:/data - /etc/timezone:/etc/timezone:ro @@ -44,7 +44,7 @@ services: PORT: 3001 DEPLOY_METHOD: docker ports: - - 3001:3001 # ⚠️ Düzeltildi + - 3001:3001 depends_on: - rocket_mongodb networks: @@ -92,4 +92,4 @@ services: volumes: - n8n_data:/home/node/.n8n networks: - - n8n \ No newline at end of file + - n8n diff --git a/configs/deployment/scripts/deploy/app.sh b/configs/deployment/scripts/deploy/app.sh index ae2755b1..bdfb17fe 100644 --- a/configs/deployment/scripts/deploy/app.sh +++ b/configs/deployment/scripts/deploy/app.sh @@ -2,13 +2,26 @@ export ENV=${1:-dev} echo "Env değeri: ${ENV}" cd ~/kurs-platform/configs/deployment -docker compose -f docker-compose-app.yml -f docker-compose-app.${ENV}.yml --profile app stop -docker compose -f docker-compose-app.yml -f docker-compose-app.${ENV}.yml --profile app rm -f +docker compose -f docker-compose-app.yml -f docker-compose-app.${ENV}.yml --profile api stop +docker compose -f docker-compose-app.yml -f docker-compose-app.${ENV}.yml --profile api rm -f + +docker compose -f docker-compose-app.yml -f docker-compose-app.${ENV}.yml --profile ui stop +docker compose -f docker-compose-app.yml -f docker-compose-app.${ENV}.yml --profile ui rm -f cd ~/kurs-platform git checkout main git fetch && git pull cd ~/kurs-platform/configs/deployment -docker compose -f docker-compose-app.yml -f docker-compose-app.${ENV}.yml --profile app pull -docker compose -f docker-compose-app.yml -f docker-compose-app.${ENV}.yml --profile app up -d +docker compose -f docker-compose-app.yml -f docker-compose-app.${ENV}.yml --profile api pull +docker compose -f docker-compose-app.yml -f docker-compose-app.${ENV}.yml --profile api up -d + +API_URL="https://api.sozsoft.com/api/app/platform-tenant?skipCount=0&maxResultCount=1" + +echo "kurs-api açılması bekleniyor: $API_URL" +until curl -fsS --max-time 5 -o /dev/null "$API_URL"; do + sleep 2 +done + +docker compose -f docker-compose-app.yml -f docker-compose-app.${ENV}.yml --profile ui pull +docker compose -f docker-compose-app.yml -f docker-compose-app.${ENV}.yml --profile ui up -d