-
Notifications
You must be signed in to change notification settings - Fork 1
infra: 도커 컴포즈 및 운영서버 CICD 구축 #89
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
✅ 테스트 결과 for PRBuild: success 🧪 테스트 실행 with Gradle |
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR modifies the production CI/CD workflow for testing purposes and adds a new docker-compose-prod.yaml configuration file. The changes are explicitly marked as temporary (with Korean comments indicating "테스트 이후에 dev 지울 것" - "remove dev after testing") to test the production pipeline deployment flow.
Changes:
- Added docker-compose-prod.yaml with production-specific service configurations including autoheal, health checks, and resource limits
- Modified push-cd-prod.yml workflow to trigger on 'dev' branch pushes and pull requests (temporary for testing)
- Added SSH port parameter to production server deployment command
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| docker-compose-prod.yaml | New production Docker Compose configuration with spring-app and autoheal services, including comprehensive JVM tuning, health checks, and resource limits |
| .github/workflows/push-cd-prod.yml | Modified workflow triggers to include dev branch and pull requests for testing purposes; added SSH port parameter for production server connection |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
docker-compose-prod.yml
Outdated
| build: | ||
| context: . | ||
| dockerfile: Dockerfile |
Copilot
AI
Jan 18, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The Docker image is being built and tagged in the docker-compose file, but this approach can lead to unexpected behavior in production deployments. In a CD pipeline, the image should already be built and pushed to a registry during the CI phase. The docker-compose file should only pull and run the pre-built image, not build it. Consider removing the 'build' section and only keeping the 'image' reference to pull from the registry.
| build: | |
| context: . | |
| dockerfile: Dockerfile |
.github/workflows/push-cd-prod.yml
Outdated
| branches: [ main, dev ] # Only main branch, 테스트 이후에 dev 지울 것 | ||
| pull_request: | ||
| branches: [ dev, main ] # 테스트 이후에 지울 것 | ||
| types: [ opened, synchronize, reopened ] | ||
|
|
Copilot
AI
Jan 18, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This workflow is designed for production deployments but now triggers on 'dev' branch pushes and pull requests. This is a significant security and operational risk as it could deploy untested code to production. Production CD workflows should only trigger on the main/master branch and should not trigger on pull requests. The temporary test configuration should be removed before merging, or a separate workflow should be created for testing purposes.
| branches: [ main, dev ] # Only main branch, 테스트 이후에 dev 지울 것 | |
| pull_request: | |
| branches: [ dev, main ] # 테스트 이후에 지울 것 | |
| types: [ opened, synchronize, reopened ] | |
| branches: [ main ] |
📋 상세 설명
📊 체크리스트
📆 마감일