Cloud & Platform
Docker 컨테이너 기본 조작 실습
Docker 컨테이너 기본 조작 실습 학습 내용을 정리한 백필 노트입니다.
이 글은 2025년 학습 기록을 블로그 형식으로 정리한 백필 노트입니다.
1. HelloWorld 컨테이너 가동
docker container run hello-world
docker container ls
docker ps
docker ps -a
docker run hello-world
2. Ubuntu 컨테이너 가동 (hostname, containerid 확인)
docker run --interactive --tty ubuntu bash
docker run -i -t ubuntu bash
docker run -it ubuntu bash
# 컨테이너 내부에서 실행
hostname
whoami
ls /etc/os*
cat /etc/os-release
head -n 4 /etc/os-release
echo $SHELL
→ 상태 유지 확인
3. 컨테이너 목록 확인 (STATUS: UP)
docker container ls
- 출력 항목
- CONTAINER ID : 컨테이너 ID(무작위)
- IMAGE : 이미지
- COMMAND : PID1
- CREATED : 생성 시간
- STATUS : 상태
- PORTS : 접근 포트
- NAMES : 컨테이너명(없을 시 무작위)
docker container ls --all
docker container ls -a
- exit 후 재시작
docker container start [Docker ID] 60be12f44f9a
docker container ls
docker exec -it [Docker ID] 60be12f44f9a bash
docker container exec -it [Docker ID] 60be12f44f9a /bin/bash
docker stop [Docker ID] 60be12f44f9a bash
4. 컨테이너 정지하기
docker container ls
docker container stop [Container ID]
5. 컨테이너 삭제하기
- 정지 컨테이너 삭제
docker container ls -a
docker container rm [Container ID]
docker container rm [Container Name]
- 실행 중인 컨테이너 강제 삭제
docker ps -a
docker container rm [Container ID / Name]
docker container rm --force [Container ID / Name]
docker container rm -f [Container ID / Name]
- 전체 삭제
docker container prune
※ 실행 중 컨테이너도 삭제되는지 확인 필요
6. 컨테이너 실행 시 임의 명령어 처리
docker run -it ubuntu bash
docker run -it ubuntu
docker container run ubuntu whoami
docker container run ubuntu head -n 4 /etc/os-release
7. Ruby 컨테이너 인라인 실행
docker container run [Image] [Command]
docker container run ruby ruby -e 'print 20+10'
8. 컨테이너 이름 구성과 삭제
docker container run --name hello hello-world
docker container ls -all
docker container rm hello
docker container run --name hello hello-world
docker container run --name hello hello-world # 에러 발생 확인
- 출력 확인
docker container run --name hello2 --rm hello-world
docker container prune
docker images -q
docker rmi $(docker images -q)
docker container run --name hello2 --rm hello-world
docker container run --rm --name hello2 hello-world
9. 컨테이너를 대화형 모드로 조작
docker container run --rm --interactive --tty python python3
>>> print('Hello World')
>>> exit()
docker container run --rm -i -t python python3
>>> 20+10
>>> exit()
docker container run --rm -it python python3
>>> sum([10,20,30,40])
>>> exit()
10. 컨테이너 포트 공개 (p, -publish)
docker container run --rm --publish 8080:80 nginx
-
웹 확인
-
Linux:
curl http://localhost:8080 -
Windows:
http://localhost:8080
-
-
포트 확인
docker container ls
docker container ls -a