# 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