2025-05-06 06:45:49 +00:00
|
|
|
|
name: kurs-platform-app
|
|
|
|
|
|
|
|
|
|
|
|
networks:
|
|
|
|
|
|
kurs-platform-data_db:
|
|
|
|
|
|
external: true
|
|
|
|
|
|
|
|
|
|
|
|
volumes:
|
|
|
|
|
|
cdn:
|
|
|
|
|
|
api-keys:
|
|
|
|
|
|
|
|
|
|
|
|
services:
|
2025-05-08 19:16:55 +00:00
|
|
|
|
|
|
|
|
|
|
# Veritabanı migrasyonları için geçici servis (kapsam dışı)
|
2025-05-06 06:45:49 +00:00
|
|
|
|
migrator:
|
2025-05-06 11:03:45 +00:00
|
|
|
|
image: devops.sozsoft.com/kurs/kurs-platform-migrator:latest
|
2025-05-06 06:45:49 +00:00
|
|
|
|
profiles: ["migrator"]
|
|
|
|
|
|
environment:
|
|
|
|
|
|
- ASPNETCORE_ENVIRONMENT=Dev
|
|
|
|
|
|
- SEED=${SEED}
|
|
|
|
|
|
networks:
|
|
|
|
|
|
- kurs-platform-data_db
|
2025-05-08 19:16:55 +00:00
|
|
|
|
|
|
|
|
|
|
# Backend API
|
2025-05-06 06:45:49 +00:00
|
|
|
|
api:
|
2025-05-06 11:03:45 +00:00
|
|
|
|
image: devops.sozsoft.com/kurs/kurs-platform-api:latest
|
2025-05-08 19:16:55 +00:00
|
|
|
|
container_name: kurs-api
|
2025-05-06 06:45:49 +00:00
|
|
|
|
profiles: ["app"]
|
|
|
|
|
|
environment:
|
|
|
|
|
|
- ASPNETCORE_ENVIRONMENT=Dev
|
2025-05-08 19:16:55 +00:00
|
|
|
|
ports:
|
|
|
|
|
|
- 8080:8080 # ⚠️ NGINX için eklendi
|
2025-05-06 06:45:49 +00:00
|
|
|
|
volumes:
|
|
|
|
|
|
- cdn:/etc/api/cdn
|
|
|
|
|
|
- api-keys:/root/.aspnet/DataProtection-Keys
|
2025-05-08 19:16:55 +00:00
|
|
|
|
networks:
|
|
|
|
|
|
- kurs-platform-data_db
|
|
|
|
|
|
- default
|
|
|
|
|
|
|
|
|
|
|
|
# Frontend (UI)
|
2025-05-06 06:45:49 +00:00
|
|
|
|
ui:
|
2025-05-06 11:03:45 +00:00
|
|
|
|
image: devops.sozsoft.com/kurs/kurs-platform-ui:latest
|
2025-05-08 19:16:55 +00:00
|
|
|
|
container_name: kurs-ui
|
2025-05-06 06:45:49 +00:00
|
|
|
|
profiles: ["app"]
|
2025-05-08 19:16:55 +00:00
|
|
|
|
ports:
|
|
|
|
|
|
- 3002:80 # ⚠️ UI uygulaması için dış port açıldı
|
2025-05-06 06:45:49 +00:00
|
|
|
|
networks:
|
|
|
|
|
|
- default
|
2025-05-08 19:16:55 +00:00
|
|
|
|
|
|
|
|
|
|
# Statik dosya sunucusu (CDN)
|
2025-05-06 06:45:49 +00:00
|
|
|
|
cdn:
|
|
|
|
|
|
image: tozlu/http-server:latest
|
2025-05-08 19:16:55 +00:00
|
|
|
|
container_name: kurs-cdn
|
2025-05-06 06:45:49 +00:00
|
|
|
|
profiles: ["app"]
|
|
|
|
|
|
working_dir: /srv/http-server
|
|
|
|
|
|
volumes:
|
|
|
|
|
|
- cdn:/public:ro
|
|
|
|
|
|
command: "/public -c10 --cors"
|
2025-05-08 19:16:55 +00:00
|
|
|
|
ports:
|
|
|
|
|
|
- 8081:8080 # Dış:İç (doğru port eşlemesi)
|
2025-05-06 06:45:49 +00:00
|
|
|
|
networks:
|
|
|
|
|
|
- default
|
2025-05-08 19:16:55 +00:00
|
|
|
|
|
2025-05-15 12:02:39 +00:00
|
|
|
|
# Company (UI)
|
|
|
|
|
|
company:
|
|
|
|
|
|
image: devops.sozsoft.com/kurs/kurs-platform-company:latest
|
|
|
|
|
|
container_name: kurs-company
|
|
|
|
|
|
profiles: ["app"]
|
|
|
|
|
|
ports:
|
|
|
|
|
|
- 3003:80 # ⚠️ UI uygulaması için dış port açıldı
|
|
|
|
|
|
networks:
|
|
|
|
|
|
- default
|
|
|
|
|
|
|
2025-05-08 19:16:55 +00:00
|
|
|
|
# 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
|