[Docker] bind mount의 permission denied 문제

UID? GID? 그게 뭔데 씹덕아

1. 문제 상황 Docker에서 bind mount를 사용할 때 가장 많이 만나는 문제가 있다. 바로 permission denied다. 귀찮아서 무시하고 있었는데 드디어 시간을 내서 정리해본다. 결론부터 말하하면 이 문제는 컨테이너의 사용자와 호스트 파일의 소유자가 다르기 때문에 접근 권한이 없을 때 발생한다. 2. UID와 GID 가. 도커의 3단계 권한 흐름 Docker는 아래 3단계를 거쳐 실행된다. 단계 역할 특징 … 더 읽기

[Docker] 예제

Featured image for [Docker] 예제

3번의 프로젝트를 진행하면서 추후 참고할 만한 부분만 가져왔습니다. 1. 디렉터리 구조 2. Dockerfile 예시 가. frontend (react) 나. backend (java) 다. backend (python) 3. docker-compose.yml 예시 가. certbot 나. db (mysql) 다. app 라. 기타 1) health check MySQL 컨테이너의 상태를 체크하는 healthcheck 설정이다. mysqladmin ping 명령어로 데이터베이스 연결을 확인하며, 20초 타임아웃에 최대 10번 재시도한다. … 더 읽기

[Docker] Compose

Featured image for [Docker] Compose

0. Compose? 사랑합니다. 이고잉님 솔직히 docker run 명령어를 사용할 때마다 너무 복잡하다고 느낀다. 혹시 옵션이 하나라도 누락되었을까 걱정되기도 한다. 또 도커를 모르는 친구들과 협업할 때 저 docker run 명령어의 옵션을 하나하나 설명하는 것은 … 좀 그렇다. compose가 이런 걱정을 덜어줄 수 있다. 1. Compose! 이런 상황을 가정하자 docker-compose.md GitHub Gist: instantly share code, notes, and … 더 읽기