
도커를 공부해보고싶다는 마음이 들어서 내가 공부한 것을 간단히 정리하는 마음으로 기록하는 포스팅이다.
실무에 당장 필요해서 공부하는건 아니고, 곧 필요해질 것 같아서 미리 공부해두는 마음으로..
[ 도커 실행 기본 명령어 ]
docker + _______(여기에 다양한 명령어를 넣으면 된다)________
📌 help
뭐든 잘 모르겠으면 docker 명령어 --help를 입력하면 친절히 설명해주니 유념하시오!
📌 run
docker run [OPTIONS] IMAGE[:TAG|@DIGEST] [COMMAND] [ARG...]
도커를 실행시키는 명령어이다.
→ docker run (주고싶은 각종 옵션들 ~~~) (실행시키고싶은 컨테이너 종류)... 이렇게 입력해주면 된다.
1. docker run 옵션
-d: detached mode, 백그라운드로 돌리는 옵션
--rm: 컨테이너가 종료되면 삭제해라
-v: 호스트와 컨테이너의 디렉토리 연결 → 요건 밑에서 더 자세히 설명
-e: 컨테이너에서 사용할 환경변수 설정
-it: 터미널에 내 PC의 주변장치로 입력하기 위한 옵션(-i & -t라고 한다)
이는 STDIN 표준 입출력을 열고 가상 tty (pseudo-TTY) 를 통해 접속하겠다는 의미이다.
--network: 네트워크 연결
–name: 컨테이너 이름 설정
2. docker run 컨테이너 종류
ubuntu, centos, nginx, wordpress, mysql.... 등등등등등
아직 학부생의 나의 시선에서는 왠만하면 거의 모든 스택이 도커 이미지로 지원되는 것 같다.
https://hub.docker.com/search?type=image
Docker Hub
hub.docker.com
ubuntu를 실행시키면 컨테이너가 만들어지고 바로 꺼진다
그런데 -it 옵션을 주면?
만들어진 우분투 컨테이너의 bash창에 접속이 가능하다.
디폴트 명령어가 /bin/bash라서 바로 실행이 되는듯 하다..
📌 exec
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
실행중인 컨테이너에 접속하기 위해서는 exec 명령어를 사용할 수 있다
ubuntu 컨테이너에 접속하기 위해 docker exec -it [ubuntu컨테이너이름] [명령어]를 주면 된다.
📌 ps
docker ps [OPTIONS]
현재 실행중인 컨테이너 리스트 확인 가능함!
CONTAINER ID | IMAGE | COMMAND | CREATED | STATUS | PORTS | NAMES
의 순서대로 정보들이 출력되고, 이 중에서 컨테이너의 NAMES는 따로 지정해주지 않으면 랜덤하게 이름이 생성된다.
-a: 옵션을 주면 현재 종료된 컨테이너까지도 볼 수 있다.
docker run 시에 --rm옵션을 주면
📌 rm
docker rm [OPTIONS] CONTAINER [CONTAINER...]
컨테이너 지우기
📌 logs
docker logs [OPTIONS] CONTAINER
-f: 실시간으로 새로운 로그를 계속 띄운다.
📌 images
docker images [OPTIONS] [REPOSITORY[:TAG]]
run 명령어 시 이미지가 다운되어있는게 없으면 이미지를 먼저 다운받고 실행시킨다.
그렇게 다운받아진 이미지들이다.
📌 pull
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
이미지를 다운로드하는 명령어
📌 rmi
docker rmi [OPTIONS] IMAGE [IMAGE...]
다운되어있는 이미지를 삭제하는 명령어
📌 network create
docker network create [OPTIONS] NETWORK
도커 컨테이너끼리 이름으로 통신할 수 있는 가상 네트워크를 만든다.
📌 volume mount(-v)
word press에 mysql을 연결했다가 mysql 컨테이너를 삭제하면 word press 관련 데이터들이 싹- 다 날아간다!
이를 막기 위해서는 -v 옵션으로 로컬 저장소와 연결해두면 된다.