Docker, DockerHub 명령어 정리

​ ​

docker-architect

명령어를 정리하기 전에 Docker 시스템 아키텍처를 보면 이해하기 쉽습니다. Docker는 크게 클라이언트-서버 아키텍처 로 구성되어 있습니다. 그림처럼 우리가 명령어를 입력하면 클라이언트는 데몬과 통신하고 데몬이 컨테이너를 빌드, 실행합니다.

DockerHub는 도커 컨테이너를 관리하고 공유하기 위한 SAAS로 GitHub 처럼 이미지를 올려서 공유하거나 내려받을 수 있습니다.

지난 번 포스팅에 이어서 이제 Docker 명령어를 정리하고, 더 나아가 DockerHub에 이미지를 올리는 방법까지 알아보겠습니다.

상태 확인하기

docker ps
docker images

docker ps는 실행 중인 컨테이너 목록을 확인할 때 사용합니다. -a 옵션을 사용하면 전체 목록을 확인할 수 있습니다. docker images는 설치된 이미지 목록을 확인할 때 사용합니다.

​ ​

이미지 받아오기

docker search nginx
docker pull nginx

다음은 Dockerhub로 부터 이미지를 받아오기 위한 명령어입니다. docker search [image]로 이미지를 검색할 수 있습니다. docker pull [image]을 사용하여 이미지를 받아올 수 있습니다.

​ ​

컨테이너 실행하기

docker run -d -p 80:80 --name webserver nginx

docker run [image] 명령어를 통해 컨테이너를 실행할 수 있습니다. -p 옵션을 통해 포트를 지정할 수 있고, -d 옵션을 통해 백그라운드로 실행시킬 수 있습니다. 그리고 --name을 통해 컨테이너 이름을 지정할 수 있습니다.

​ ​

컨테이너 중지/재시작하기

docker stop webserver
docker restart webserver
docker start webserver

docker stop/restart/start [container] 명령어를 통해 컨테이너를 중지/재시작/시작할 수 있습니다.

​ ​

컨테이너/이미지 삭제하기

docker rm -f webserver
docker rmi webserver

docker rm -f [container] 명령어를 통해 컨테이너를 삭제할 수 있습니다. docker rmi [image] 명령어를 통해 이미지를 삭제할 수 있습니다.

​ ​

DockerHub 관련 명령어

docker build [PATH]
docker commit
docker push

DockerHub를 사용하기 위해서는 먼저 로그인이 되어 있어야 합니다. 아이디가 없다면, https://hub.docker.com/에서 가입하시면 됩니다. 이후 docker login 명령어를 통해 연결할 수 있습니다.

docker build [PATH]는 지정된 경로에 Dockerfile로 이미지를 만드는 명령어 입니다. docker commit 명령어를 통해 변경사항을 저장할 수 있습니다. docker push 명령어를 통해 DockerHub 저장소에 이미지를 올릴 수 있습니다.

​ ​

이외에도 자주 사용하는 명령어

docker history
docker inspect
docker cp [PATH]

docker history [container/image] 명령어를 통해 히스토리를 확인할 수 있습니다. docker inspect [container/image] 명령어를 통해 상세정보를 확인할 수 있습니다. docker cp [PATH] 명령어를 통해 파일을 지정한 경로로 꺼내올 수 있습니다.

​ ​