Skip to content

Instantly share code, notes, and snippets.

@NeedPainkiller
Last active April 12, 2018 05:06
Show Gist options
  • Save NeedPainkiller/42b98043c0e657509889a7ace9140eb9 to your computer and use it in GitHub Desktop.
Save NeedPainkiller/42b98043c0e657509889a7ace9140eb9 to your computer and use it in GitHub Desktop.

Fork & Edit From Docker 치트 시트 by nacyot

컨테이너

라이프 사이클

관련된 정보를 출력해주는 명령어

  • docker ps 명령어는 실행중인 컨테이너 목록을 보여준다. docker ps -a 실행중인 컨테이너와 멈춰있는 컨테이너를 모두 보여준다.
  • docker inspect ip 주소를 포함한 특정 컨테이너에 대한 모든 정보를 보여준다.
  • docker logs 컨테이너로부터 로그를 가져온다.
  • docker events 컨테이너로부터 이벤트를 가져온다.
  • docker port 컨테이너의 특정 포트가 어디로 연결되어있는지 보여준다.
  • docker top 컨테이너에서 실행중인 프로세스를 보여준다.
  • docker diff 컨테이너 파일 시스템에서 변경된 파일들을 보여준다.

File Copy

Docker 이미지

라이프 사이클

  • docker images 모든 이미지 목록을 보여준다.
  • docker build Dockerfile을 통해 이미지를 생성한다.
  • docker commit 컨테이너에서 이미지를 생성한다.
  • docker rmi 이미지를 삭제한다.
  • docker insert URL에서 이미지로 파일을 집어넣는다.
  • docker load -i 표준 입력으로 tar 파일에서 (이미지와 태그를 포함한) 이미지를 불러온다.
  • docker save -o 모든 부모 레이어와 태그, 버전 정보를 tar 형식으로 표준출력을 통해 저장

관련된 정보를 출력해주는 명령어

  • docker history 이미지의 이력 정보를 보여준다.
  • docker tag 이미지에 이름으로 태그를 붙여준다(local 혹은 registry).

마지막에 실행된 컨테이너의 ID

alias dl='docker ps -l -q'
docker run ubuntu echo hello world
docker commit `dl` helloworld

명령어와 함께 커밋하기

docker commit -run='{"Cmd":["postgres", "-too -many -opts"]}' `dl` postgres

IP address 정보

docker run -i -t ubuntu /bin/bash

명령어를 사용하거나 아래 명령어를 사용합니다.

wget http://stedolan.github.io/jq/download/source/jq-1.3.tar.gz
tar xzvf jq-1.3.tar.gz
cd jq-1.3
./configure && make && sudo make install
docker inspect `dl` | jq -r '.[0].NetworkSettings.IPAddress'

이미지의 환경 변수 읽어오기

docker run -rm ubuntu env 

오래된 컨테이너들 삭제하기

docker ps -a | grep 'weeks ago' | awk '{print $1}' | xargs docker rm

멈춰있는 컨테이너들 삭제하기

docker rm `docker ps -a -q`

이미지의 의존관계 이미지로 출력하기

docker images -viz | dot -Tpng -o docker.png
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment