Runtime Configuration Options

이정훈·2024년 8월 13일

Docker

목록 보기
19/34

Runtime Configuration Options은 Docker container를 실행할 때 container의 리소스와 행동에 대한 커스텀을 할 수 있게 해줍니다.
이렇게 커스텀함으로써 컨테이너의 리소스와 컨테이너 보안 그리고 컨테이너의 네트워크를 관리할 수 있습니다.

아래에서는 자주 사용하는 Runtime Configuration Option에 대해 알아보겠습니다.

Resource Management

  • CPU
    --cpus 옵션과 --cpu-shares 옵션을 이용하면 컨테이너의 CPU 사용량을 제한할 수 있습니다.
    --cpus 옵션은 컨테이너가 사용가능한 cpu코어를 제안합니다.
    --cpu-shares는 컨테이너가 cpu를 사용할 수 있는 상대적인 시간을 설정합니다.
    아래는 옵션 사용 예시입니다.
docker run --cpus=2 --cpu-shares=512 your-image
  • Memory
    --memory와 --memory-reservation 옵션을 이용하여 컨테이너가 할당 받는 메모리를 제한할 수 있습니다.
    --memory는 컨테이너가 사용할 수 있는 최대 메모리 양을 설정합니다.
    --memory-reservation 옵션은 컨테이너가 기본적으로 가지게 될 메모리 양을 설정합니다.
docker run --memory=1G --memory-reservation=500M your-image

Security

  • User
    기본적으로 컨테이너는 root계정을 통해 실행됩니다.
    보안을 향상시키기 위해서 --user 옵션을 이용해 다른 user 나 UID로 접속합시다.
docker run --user 1000 your-image
  • Read-only root file system
    컨테이너 파일 시스템이 원치 않는 변경을 막기 위해 --read-only옵션을 이용할 수 있습니다.
    이렇게 되면 컨테이너의 루트 파일 시스템은 읽기전용으로 바뀝니다.
docker run --read-only your-image

Networking

  • Publish Ports
    -- publish또는 -p 옵션을 이용해서 컨테이너의 포트와 호스트 시스템의 포트를 연결할 수 있습니다.
    이렇게 하면 외부에서 컨테이너에 접근 가능합니다.

  • Hostname and DNS
    호스트 이름과 DNS 설정을 할 수 있습니다.
    --hostname과 --dns옵션을 이용하면 됩니다.

docker run --hostname=my-container --dns=8.8.8.8 your-image
profile
기록으로 흔적을 남깁니다.

0개의 댓글