목차
- 도커 컨테이너 실행 명령어
- 목록 조희 명령어
- 도커 기본 명령어
도커 컨테이너 실행 - docker run
--interatcitve, -i 표준 입력창을 엽니다.
--tty. -t 장치에 tty를 할당합니다.
--name 컨테이너의 이름을 세팅합니다.
*이 옵션을 사용하지 않을 경우 영어 단어를 임의로 조합하여 세팅됩니다.
--detach, -d 백그라운드에서 컨테이너를 실행합니다.
--publish, -p 호스트/컨테이너 포트 포워딩을 세팅합니다.
도커 컨테이너 목록 조희 - docker container ls
도커 컨테이너 이름 변경 - docker container rename
도커 컨테이너 프로세스 실행 - docker container exec
도커 컨테이너 로그 출력 - docker container log
실습
우분투 서버로 powerShell7에서 접속합니다.
도커 컨테이너 실행
sudo -> super user do의 약자
대화형 컨테이너 실행
sudo docker container run -i -t --name centos centos:lastest
이미지, 이미지 버전
백그라운드형 컨테이너 실행
sudo docker container run -d -p 80:80 --name apache httpd:latest
동일한 포트에서 이미 docker container 이미지가 돌아가고 있어서 안되네요.
동일한 포트에서 docker container를 생성할 수 없습니다.
그렇다면 이미 생성된 docker server에 접속을 해봅시다.
해당 주소를 알아내고 브라우저에서 접속을 해보면 아래와 같이 잘 동작하는 것을 확인할 수 있습니다.
sudo docker container logs web-server를 통해서 logs를 확인할 수 있습니다.
대화형 컨테이너, 백그라운드형 컨테이너를 실행하는 것을 알아보았습니다.
현재 도커 엔진에서 작동되고 있는 container 확인
sudo docker container ps
up상태인 server를 확인할 수 있습니다.
ifconfig로 해당 도커 컨테이너의 이미지의 ip주소를 브라우저에 입력하게 되면, 잘 동작하는지 확인할 수 있습니다.
sudo docker container stop <컨테이너명>
이제 다시 한번 실행해봅시다.
run을 사용하면 될 거라고 생각했지만, run 명령어는 해당 도커 컨테이너가 생성되지 않았을 때,
생성과 실행을 같이하는 명령어입니다.
sudo docker container ps -a 명령어는 정지된 컨테이너까지 모두 보여주는 명령어입니다.
Exited는 정지되어있다는 것을 의미합니다.
run 대신에
sudo docker container start <컨테이너명>
이미 생성된 도커 컨테이너를 실행하기 위해서는 run대신에 start라는 명령어를 사용해야 합니다.
한 번 run으로 실행하게 되면, 실행한 컨테이너를 삭제하기 전에 동일한 이름으로 컨테이너를 생성할 수 없습니다.
동일한 이미지는 가능하지만 동일한 컨테이너명으로 생성할 수 없습니다.
sudo docker container restart <컨테이너명>
sudo docker container ps
을 통해서 도커 컨테이너가 실행 중인지를 알 수 있습니다.
생성 시점과 실행 시점이 다른 것을 확인할 수 있습니다.
구동 중인 컨테이너에 연결
sudo docker container attach apache
접속한 로그를 확인할 수 있습니다.
Ctrl + C 종료
컨테이너 내부로 들어가서 프로세스 실행하는 명령어
sudo docker container exec -it <컨테이너명>
/bin/echo 로 들어가 문자열 형태로 출력합니다.
bash 실행
컨테이너 내부의 구동 중인 프로세스 확인
sudo docker container top <컨테이너명>
컨테이너 이름 변경
sudo docker container rename <기존 컨테이너명> <바꿀 컨테이너명>
run 명령어를 통해서 container를 생성하게 되는데, 나중에 rename 할 때 이 명령어가 유용하게 쓰입니다.
컨테이너 이미지 변경
sudo docker container cp apache:/usr/local/apache2/htodocs/index.html /tmp/index.html
cat /tmp/index.html 로 확인
복사해서 파일을 수정하고 다시 덮어 씌웁니다.
sudo docker container cp /tmp/index.html apache:/usr/local/apache2/htodocs/index.html
컨테이너 변경사항 확인
sudo docker container diff <컨테이너 명>
A, D, C 는 변경사항을 각각으로 범주화해서 나타낸 것입니다.
C는 Changed, 변경이 이루어진 directory를 의미합니다.
A는 Added, 기존의 없던 것이 추가되었다는 것을 의미합니다.
D는 Deleted, 기존의 파일이 삭제된 것을 의미합니다.
'DevOps > Docker' 카테고리의 다른 글
[Docker]6. 도커 파일 명령어 [도커 기초 | Week 3] (0) | 2021.09.02 |
---|---|
[Docker]5. 도커 파일 [도커 기초 | Week 3] (0) | 2021.09.01 |
[Docker]4. 도커 이미지[도커 기초 | Week 3] (0) | 2021.08.26 |
[Docker]2. 도커 환경 세팅[도커 엔진 | 도커 기초 | Week 2] (0) | 2021.08.14 |
[Docker]1. Intro[도커 기초 | Week1] (0) | 2021.08.06 |