57 lines
1.3 KiB
YAML
57 lines
1.3 KiB
YAML
# Gitea + Jenkins CI/CD 인프라 (NAS 최초 1회 실행)
|
|
# 사용법: cd deploy && docker-compose -f docker-compose.infra.yml up -d
|
|
|
|
services:
|
|
gitea:
|
|
image: gitea/gitea:latest
|
|
container_name: gitea
|
|
environment:
|
|
- TZ=Asia/Seoul
|
|
- GITEA__database__DB_TYPE=sqlite3
|
|
- GITEA__server__ROOT_URL=${GITEA_URL:-http://nas-ip:3001}
|
|
- GITEA__server__HTTP_PORT=3000
|
|
- GITEA__server__SSH_DISABLED=true
|
|
volumes:
|
|
- gitea_data:/data
|
|
ports:
|
|
- "3001:3000"
|
|
restart: unless-stopped
|
|
networks:
|
|
- cicd-network
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: 256M
|
|
|
|
jenkins:
|
|
image: jenkins/jenkins:lts-jdk17
|
|
container_name: jenkins
|
|
environment:
|
|
- TZ=Asia/Seoul
|
|
- JAVA_OPTS=-Xmx512m -Xms256m
|
|
volumes:
|
|
- jenkins_data:/var/jenkins_home
|
|
# Docker-in-Docker: 호스트 Docker 소켓 공유
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
ports:
|
|
- "8080:8080"
|
|
- "50000:50000"
|
|
restart: unless-stopped
|
|
networks:
|
|
- cicd-network
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: 1G
|
|
# Jenkins에서 docker 명령 사용을 위한 그룹 설정
|
|
# NAS에서 docker.sock 권한: sudo chown root:docker /var/run/docker.sock
|
|
user: root
|
|
|
|
volumes:
|
|
gitea_data:
|
|
jenkins_data:
|
|
|
|
networks:
|
|
cicd-network:
|
|
driver: bridge
|