728x90
SMALL
컨테이너 다루는 방법에 대해서 적어보자
컨테이너 시작 (docker container start)
docker (container) start [옵션] <컨테이너 식별자> [컨테이너 식별자]
- 정지된 컨테이너를 시작할 때 start 명령을 사용
- -attach, -a : 표준 출력, 표준 오류 출력을 연다
- -interactive, i : 컨테이너의 표준 입력을 연다
컨테이너 정지 (docker container stop)
docker (container) stop [옵션] <컨테이너 식별자> [컨테이너 식별자]
- 실행 중인 컨테이너를 정지할 때 stop 명령을 사용
- -time, -t : 몇초 후 정지할 것인지 지정 (기본값은 10초)
- 강제적으로 정지 : docker contianer kill
컨테이너 삭제 (docker container rm)
docker (container) rm [옵션] <컨테이너 식별자> [컨테이너 식별자]

- -force, -f : 실행 중인 컨테이너를 강제로 삭제
- -volume, -v : 할당한 볼륨을 삭제
- docker rm docker ps -a --quiet : 도커 컨테이너 전부 삭제
- docker system prune : 불필요한 이미지/컨테이너 일괄 삭제
컨테이너 생성 및 시작 (docker container run) ⭐️
docker (container) run [옵션] 이미지명[:태그명] [인수]
- -attach, -a : 표준 입, 출력, 오류 출력에 어태치 한다
- -cidfile : 컨테이너 ID를 파일로 출력한다
- -detach, -d : 컨테이너를 생성하고 백그라운드에서 실행한다
- -interactive, -i : 컨테이너의 표준 입력을 연다
- -tty, -t : 단말기 디바이스를 사용한다
- -name : 컨테이너 이름 지정
- -rm : 실행이 끝나고 즉시 제거함

- it 옵션을 사용하였다

- /bin/cal 명령은 Linux 표준 명령으로 달력을 콘솔에 출력하는 명령
- -rm 옵션으로 컨테이너 종료 시 자동으로 삭제하도록 설정
docker run 다른 옵션들
- run은 기본적으로 포그라운드 실행이다
- -detach, -d : 백그라운드 실행
- -user, -u : 사용자명 지정
- -restart=[no | on-failure | on-failure:횟수 n | always | unless-stopped] : 명령의 실행 결과에 따라 재시작을 하는 옵션
- no : 재시작 X
- on-failure : 종료 status가 0이 아닐 때 재시작
- on-failure:횟수n : 종료 status가 0이 아닐 때 n번 재시작한다
- always : 항상 재시작한다
- unless-stopped : 최근 컨테이너가 정지 상태가 아니라면 항상 재시작한다

- dit 로 백그라운드 실행을 했다.
- docker attach ubuntu 명령어로 ubuntu 컨테이너에 attach 가능
- exit 하면 컨테이너는 종료됨
- 컨트롤 + p + q 하면 실행 중에 나올 수 있음
- 다시 들어가려면 docker container attach [이름]

- -restart always : 명령이 끝나면 항상 재실행
- sleep 10이 끝날 때마다(10초마다) 항상 재실행된다
컨테이너 안의 파일 복사 (docker container cp)
# 컨테이너 -> 호스트
docker container cp <컨테이너 식별자>:<컨테이너 안의 파일 경로> <호스트 디렉토리 경로>
# 호스트 -> 컨테이너
docker container cp <호스트의 파일> <컨테이너 식별자>:<컨테이너 안의 파일 경로>
컨테이너 안 사용하지 않는 컨테이너 리소스를 없앰
docker system prune 을 치면 기본적으로 WARNING이 뜨게 된다.
이는 prune 명령어를 조심스럽게 사용해야 한다는 것을 의미하고 docker 가 알려주는 것 처럼 많은 불필요한 리소스를 삭제한다.
- 멈춰있는 모든 컨테이너
- 최소 한 개의 컨테이너에서 사용되지 않는 네트워크
- 매달려있는 (불필요한, 부수적인) 이미지
- 매달려있는 (불필요한, 부수적인) 빌드 캐시
이를 염두하고 만약 삭제하길 원한다면 y 를 쳐서 삭제를 진행하면 다음과 같이 많은 컨테이너들이 삭제되는 것을 볼 수 있다.
docker system prune
WARNING! This will remove:
- all stopped containers
- all networks not used by at least one container
- all dangling images
- all dangling build cache
Are you sure you want to continue? [y/N] y
LIST
'🐳 Infra > System' 카테고리의 다른 글
[Linux] DIsk 용량 확보 팁 (0) | 2024.12.19 |
---|---|
RAM 부족 시 대처 방안 (1) | 2024.12.19 |
[Linux] SWAP 메모리 정의 및 사용 상황 (0) | 2024.12.19 |
HA (High Availability, 고가용성) (0) | 2024.12.12 |
Microsoft Active Directory (2) | 2024.03.22 |