docker container run [옵션] 이미지명[:태그명] [인수]
옵션 | 설명 |
--attach, -a | 표준 입력(STDIN), 표준 출력(STDOUT), 표준 오류 출력(STDERR)에 Attach |
--cidfile | 컨테이너 ID를 파일로 출력한다. |
--detach, -d | 컨테이너를 생성하고 백그라운드에서 실행한다. |
--interactive, -i | 컨테이너의 표준 입력을 연다 |
--tty, -t | 단말기 디바이스를 사용한다. |
docker container run -it --name "kafka" kafkaimage /start-kafka.sh
docker container run [실행 옵션] 이미지명[:태그명] [인수]
옵션 | 설명 |
-- detach, -d | 백그라운드에서 실행 |
--user, -u | 사용자명을 지정 |
--restart=[no | on-failure | on-failure:횟수n | always | unless-stopped] | 명령의 실행 결과에 따라 재시작을 하는 옵션 |
--rm | 명령 실행 완료 후에 컨테이너를 자동으로 삭제 |
docker container run -d centos /bin/ping localhost
설정값 | 설명 |
no | 재시작하지 않는다. |
on-failure | 종료 스테이터스가 0이 아닐 때 재시작한다 |
on-failure:횟수n | 종료 스테이터스가 0이 아닐 때 n번 재시작한다 |
always | 항상 재시작한다 |
unless-stopped | 최근 컨테이너가 정지 상태가 아니라면 항상 재시작한다. |
# --restart 옵션
docker run --restart always -d centos:latest sleep 10
# 10초 동안 sleep을 백그라운드로 실행, --restart always로 sleep 10이 계속 반복
docker run --restart on-failure -d centos:latest sleep 10
# 10초 동안 sleep을 백그라운드로 실행 후 exited 됨
docker run --name hello -rm hello-world:latest
# 실행 후 container ls -a로 확인해봐도 찾을 수 없음 명령 실행 후 컨테이너가 자동으로 삭제됨
docker stats
: 컨테이너 자원 사용 정보를 볼 수 있다.docker container run [자원 옵션] 이미지명[:태그명] [인수]
옵션 | 설명 |
--cpu-shares, -c | CPU의 사용 배분(비율) |
--memory, -m | 사용할 메모리를 제한하여 실행(단위는 b, k, m, g 중 하나) |
--volume=[호스트의 디렉토리]:[컨테이너의 디렉토리], -v | 호스트와 컨테이너의 디렉토리를 공유 |
docker run -dit --memory 1g centos:latest
docker run --cpus 0.3 --rm -dit --name os2 centos:latest
docker run --cpus 0.1 --rm -dit --name os3 centos:latest
docker ls [옵션]
옵션 | 설명 |
--all, -a | 실행 중/정지 중인 것도 포함하여 모든 컨테이너를 표시 |
--filter, -f | 표시할 컨테이너의 필터링 |
--format | 표시 포맷을 지정 |
--last, -n | 마지막으로 실행된 n건의 컨테이너만 표시 |
--latest, -l | 마지막으로 실행된 컨테이너만 표시 |
--no-trunc | 정보를 생략하지 않고 표시 |
--quiet, -q | 컨테이너 ID만 표시 |
--size, -s | 파일 크기 표시 |
항목 | 설명 |
CONTAINER ID | 컨테이너 ID |
IMAGE | 컨테이너의 바탕이 된 이미지 |
COMMAND | 컨테이너 안에서 실행되고 있는 명령 |
CREATED | 컨테이너 작성 후 경과 시간 |
STATUS | 컨테이너의 상태(restarting, running, paused, exited) |
PORTS | 할당된 포트 |
NAMES | 컨테이너 이름 |
docker container run [환경설정 옵션] 이미지명[:태그명] [인수]
옵션 | 설명 |
--env=[환경변수], -e | 환경변수를 설정한다. |
--env-file=[파일명] | 환경변수를 파일로부터 설정한다. |
--read-only=[true | false] | 컨테이너의 파일 시스템을 읽기 전용으로 만든다. |
--workdir=[패스], -w | 컨테이너의 작업 디렉토리를 지정한다. |
-u, --user=[사용자명] | 사용자명 또는 UID를 지정한다. |
docker run -it -e TEST1=Hello -e TEST2 --rm centos:latest
# Hello 출력
echo $TEST1
# World 출력
echo $TEST2
### 환경변수를 파일로 설정해서 사용해보기
cat > env_file
TEST1=Hello
TEST2=World
TEST3=Merong
docker run -it --env-file env_file --rm centos:latest
# Hello World Merong
echo $TEST1 $TEST2 $TEST3
docker start [옵션] <컨테이너 식별자> [컨테이너 식별자]
옵션 | 설명 |
--attach, -a | 표준 출력, 표준 오류 출력을 연다 |
--interactive, -i | 컨테이너의 표준 입력을 연다 |
docker stop [옵션] <컨테이너 식별자> [컨테이너 식별자]
옵션 | 설명 |
--time, -t | 컨테이너의 정지 시간을 지정(기본값은 10초) |
docker restart [옵션] <컨테이너 식별자> [컨테이너 식별자]
옵션 | 설명 |
--time, -t | 컨테이너의 재시작 시간을 지정(기본값은 10초) |
docker container rm [옵션] <컨테이너 식별자> [컨테이너 식별자]
옵션 | 설명 |
--force, -f | 실행 중인 컨테이너를 강제로 삭제 |
--volumes, -v | 할당한 볼륨을 삭제 |
docker puase <컨테이너 식별자>
docker unpause <컨테이너 식별자>