Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR introduces Docker configuration improvements for both the backend and frontend environments and adds a Makefile to automate the frontend build process.
- Updated Docker Compose files for backend services to include additional healthchecks and dependency conditions.
- Added new Dockerfile and docker-compose.yml files for the frontend application.
- Integrated a Makefile for automating the frontend container management.
Reviewed Changes
Copilot reviewed 9 out of 20 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| src/frontend/docker-compose.yml | Added configuration for the frontend container with necessary environment variables and volume mounts. |
| src/backend/user-server/docker-compose.yml | Added a dependency on Redis with a healthcheck condition. |
| src/backend/redis/docker-compose.yml | Introduced healthcheck configuration for the Redis container. |
| src/backend/main-server/main/docker-compose.yml | Extended dependency conditions to include MySQL and Redis. |
| src/backend/kafka/docker-compose.yml | Added healthcheck configurations for both Zookeeper and Kafka, with Kafka now depending on Zookeeper's health. |
| src/backend/elk/docker-compose-kibana.yml | Updated Kibana healthcheck parameters and test command. |
| src/backend/elk/docker-compose-es.yml | Modified the Elasticsearch healthcheck and added a platform specification for ARM64 issues. |
| src/backend/chat-server/docker-compose.yml | Updated dependencies to ensure Kafka is healthy before starting chat service containers. |
| src/backend/auth-server/docker-compose.yml | Added a dependency on Redis with a healthcheck condition. |
Files not reviewed (11)
- src/backend/chat-server/Dockerfile: Language not supported
- src/backend/chat-server/src/main/resources/logback.xml: Language not supported
- src/backend/file-server/Dockerfile: Language not supported
- src/backend/history-server/Dockerfile: Language not supported
- src/backend/main-server/main/Dockerfile: Language not supported
- src/backend/main-server/main/src/main/resources/logback.xml: Language not supported
- src/backend/signaling-server/Dockerfile: Language not supported
- src/backend/state-server/Dockerfile: Language not supported
- src/frontend/Dockerfile: Language not supported
- src/frontend/package.json: Language not supported
- src/makefile: Language not supported
| test: | ||
| [ | ||
| "CMD-SHELL", | ||
| 'curl -s http://localhost:9200/_cluster/health | grep -vq ''"status":"red"''', |
There was a problem hiding this comment.
The quoting in the Elasticsearch healthcheck command may not work as intended, which could fail to detect a 'red' status correctly. Consider revising the test command to use clearer quote escaping (e.g., 'grep -vq ""status":"red""') to ensure proper healthcheck evaluation.
| 'curl -s http://localhost:9200/_cluster/health | grep -vq ''"status":"red"''', | |
| "curl -s http://localhost:9200/_cluster/health | grep -vq '\"status\":\"red\"'", |
There was a problem hiding this comment.
제안 전 코드로 healthcheck 되는 것을 확인했기 때문에 변경하지 않습니다.
dahyun24
left a comment
There was a problem hiding this comment.
꼼꼼하게 docker 의존성 달아주시고~ healthy check에 프론트 dockerfile 까지!!! 수고하셨고 감사합니다 🙇
| # 1️⃣ 베이스 이미지로 OpenJDK 17 사용 | ||
| FROM openjdk:17-jdk-slim AS build | ||
| FROM amazoncorretto:17-alpine AS build | ||
|
|
There was a problem hiding this comment.
이 버전이 M4에 맞는 버전이군요! 바꿔주셔서 감사합니다~ 😄
| <springProfile name="dev,docker,default"> | ||
| <root level="INFO"> | ||
| <appender-ref ref="console_log"/> | ||
| </root> |
There was a problem hiding this comment.
prod 환경이랑 개발 환경이랑 나누는 방법 좋은데요!?! 이렇게 바꾸면 매번 파일 들어가서 수정할 일이 없을 것 같네요! 감사합니다 :)
| [ | ||
| "CMD-SHELL", | ||
| "curl -s -I http://localhost:5601/app/home | grep -q '200 OK'", | ||
| ] |
There was a problem hiding this comment.
grep -q '200 OK'
제가 놓친 부분이었네요!
KSK9820
left a comment
There was a problem hiding this comment.
M4에서 잘 동작합니다!
감사합니다!! 😊
해당 사항 (중복 선택)
설명
🔗 관련 이슈
해결한 이슈: closed #266
📝 작업 내용
Backend Docker 환경 개선
Frontend Docker 환경 구성
빌드 자동화
🔍 상세 변경 내용
Backend
Frontend
src/frontend/Dockerfile신규 작성src/frontend/docker-compose.yml신규 작성src/frontend/package.jsonDocker 환경 설정 반영src/makefileFrontend 빌드 자동화 스크립트 추가🧪 테스트 방법
cd src/frontend docker compose up --build또는 Makefile 사용해서 Frontend 실행/중지