docker api ve ui profile olarak ayrıldı

This commit is contained in:
Sedat ÖZTÜRK 2025-08-12 16:30:57 +03:00
parent 58c71827cc
commit 9a8e6145ec
4 changed files with 26 additions and 39 deletions

View file

@ -16,7 +16,3 @@ services:
restart: always restart: always
cdn: cdn:
restart: always restart: always
# nginx:
# restart: always
# volumes:
# - ./configs/nginx.production.conf:/etc/nginx/conf.d/default.conf

View file

@ -10,7 +10,6 @@ volumes:
api-keys: api-keys:
services: services:
# Veritabanı migrasyonları için geçici servis (kapsam dışı)
migrator: migrator:
image: devops.sozsoft.com/kurs/kurs-platform-migrator:latest image: devops.sozsoft.com/kurs/kurs-platform-migrator:latest
profiles: ["migrator"] profiles: ["migrator"]
@ -20,15 +19,14 @@ services:
networks: networks:
- db - db
# Backend API
api: api:
image: devops.sozsoft.com/kurs/kurs-platform-api:latest image: devops.sozsoft.com/kurs/kurs-platform-api:latest
container_name: kurs-api container_name: kurs-api
profiles: ["app"] profiles: ["api"]
environment: environment:
- ASPNETCORE_ENVIRONMENT=Dev - ASPNETCORE_ENVIRONMENT=Dev
ports: ports:
- 8080:8080 # ⚠️ NGINX için eklendi - 8080:8080
volumes: volumes:
- cdn:/etc/api/cdn - cdn:/etc/api/cdn
- api-keys:/root/.aspnet/DataProtection-Keys - api-keys:/root/.aspnet/DataProtection-Keys
@ -36,46 +34,26 @@ services:
- db - db
- default - default
# Frontend (UI)
ui: ui:
image: devops.sozsoft.com/kurs/kurs-platform-ui:latest image: devops.sozsoft.com/kurs/kurs-platform-ui:latest
container_name: kurs-ui container_name: kurs-ui
profiles: ["app"] profiles: ["ui"]
ports: ports:
- 3002:80 # ⚠️ UI uygulaması için dış port açıldı - 3002:80
volumes: volumes:
- /home/user/sozsoft.com:/etc/ssl/sozsoft.com:ro - /home/user/sozsoft.com:/etc/ssl/sozsoft.com:ro
networks: networks:
- default - default
# Statik dosya sunucusu (CDN)
cdn: cdn:
image: tozlu/http-server:latest image: tozlu/http-server:latest
container_name: kurs-cdn container_name: kurs-cdn
profiles: ["app"] profiles: ["ui"]
working_dir: /srv/http-server working_dir: /srv/http-server
volumes: volumes:
- cdn:/public:ro - cdn:/public:ro
command: "/public -c10 --cors" command: "/public -c10 --cors"
ports: ports:
- 8081:8080 # Dış:İç (doğru port eşlemesi) - 8081:8080
networks: networks:
- default - 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

View file

@ -24,7 +24,7 @@ services:
- USER_GID=1000 - USER_GID=1000
ports: ports:
- 222:22 - 222:22
- 3000:3000 # ⚠️ Eklendi: HTTP arayüz için gerekli! - 3000:3000
volumes: volumes:
- ~/forgejo/data:/data - ~/forgejo/data:/data
- /etc/timezone:/etc/timezone:ro - /etc/timezone:/etc/timezone:ro
@ -44,7 +44,7 @@ services:
PORT: 3001 PORT: 3001
DEPLOY_METHOD: docker DEPLOY_METHOD: docker
ports: ports:
- 3001:3001 # ⚠️ Düzeltildi - 3001:3001
depends_on: depends_on:
- rocket_mongodb - rocket_mongodb
networks: networks:
@ -92,4 +92,4 @@ services:
volumes: volumes:
- n8n_data:/home/node/.n8n - n8n_data:/home/node/.n8n
networks: networks:
- n8n - n8n

View file

@ -2,13 +2,26 @@ export ENV=${1:-dev}
echo "Env değeri: ${ENV}" echo "Env değeri: ${ENV}"
cd ~/kurs-platform/configs/deployment 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 api 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 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 cd ~/kurs-platform
git checkout main git checkout main
git fetch && git pull git fetch && git pull
cd ~/kurs-platform/configs/deployment 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 api 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 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