- 읽기 전용 볼륨
바인드 마운트는 로컬의 특정 위치로 연결이 된다.
그럴 때 런타임 중에 해당 파일들을 변경할 수 없도록 해야 하는 경우가 있을 것이다.
그런 경우에 사용하는 바인드 마운트를 읽기 전용 볼륨으로 전환하는 방법을 알아보자.
docker run -v "{로컬의 위치:도커의 위치:ro}" {image ID || image Name}
그럴 때는 -v 옵션을 사용하면서 :ro read-only 옵션을 넣어준다.
- Docker 볼륨 관리하기
우선 현재 도커에서 관리하고 있는 볼륨들을 먼저 확인해보자.
docker volume ls

현재는 익명 볼륨 2개와 이름 볼륨 1개를 사용하고 있는 것을 볼 수 있다.
당연히 바인드 마운트는 도커에 의해 관리되는 것이 아니기 때문에 여기에서 확인할 수 없다.
구체적으로 볼륨을 만들 수도 있다.
docker volume create {볼륨 이름}
많이 사용할 거 같지는 않다.
docker volume inspect {볼륨 이름}
inspect를 사용해서 해당 볼륨의 자세한 정보를 확인해볼 수 있다.
docker volume rm {볼륨 이름}
rm을 사용해서 볼륨을 제거할 수 있다.
물론 해당 볼륨을 사용하고 있는 컨테이너가 없을 때만 사용이 가능하다.
- dockerignore 사용하기
COPY를 할 때 보통 모든 파일들을 복사해가지만, 복사하면 안되는 파일도 있을 것이다.
그럴 때는 .dockerignore을 사용해서 복사를 막는다.
.dockerignore에 명시한 파일, 폴더 등은 복사가 되지 않으며 사용방법은 .gitignore와 비슷하다.

- Docker로 환경변수 작업하기

Dockerfile에 다음과 같이 작성하면 된다.

run 할 때 -e key=value로도 명시할 수 있다.
이렇게 환경변수를 사용하면 애플리케이션에서 해당 환경변수를 사용해 하드코딩할 필요 없이 유연하게 작성할 수 있다는 장점이 있다.
환경변수가 지정된 파일을 --env-file로 지정할 수 있다.

이렇게 key=value값이 지정되어 있는 파일을

이렇게 docker run 할 때 지정해주면 된다.
'백엔드 > Docker' 카테고리의 다른 글
Docker에서의 볼륨과 바인드 마운트 (0) | 2024.02.12 |
---|---|
DockerHub 사용하기 (0) | 2024.02.11 |
이미지와 컨테이너 관리 (1) | 2024.02.11 |
Docker 이미지와 컨테이너 (0) | 2024.02.03 |
Docker란? (0) | 2024.02.01 |