컨테이너 생성, 실행, 종료, 삭제
컨테이너 생성 및 실행
docker run [옵션]
※ 아파치 이미지를 사용해 컨테이너 생성 및 실행
docker run --name apa000ex1 -d httpd
=> 이름이 apa000ex1 이고, 아파치(httpd) 이미지를 이용하여 컨테이너 생성 및 실행(백그라운드로 실행)
옵션 형식 | 내용 |
--name 컨테이너_이름 | 컨테이너 이름을 지정 |
-p 호스트_포트번호 : 컨테이너_포트번호 | 포트 번호를 지정 |
-v 호스트_디스크 : 컨테이너_디렉터리 | 볼륨을 마운트 |
--net=네트워크_이름 | 컨테이너를 네트워크에 연결 |
-e 환경변수_이름=값 | 환경변수를 설정 |
-d | 백그라운드로 실행 |
-i | 컨테이너에 터미널(키보드)을 연결 |
-it | 컨테이너와 상호 작용하는 대화형 모드로 컨테이너 내부의 터미널 접속, 내부에서 명령어를 실행하고 터미널 세션을 유지 |
-help | 사용 방법 안내 메시지를 출력 |
컨테이너 목록 검색
docker ps
=> 현재 실행 중인 컨테이너의 목록을 출력
docker ps -a
=> 현재 존재하는 컨테이너의 목록 출력
- 컨테이너 목록의 주요 항목
항목 | 내용 |
CONTAINER ID | 컨테이너 식별자, 무작위 문자열 할당. 본래 64글자 앞에서 12글자만 출력 |
IMAGE | 컨테이너를 만들 때 사용한 이미지의 이름 |
COMMAND | 컨테이너 실행 시에 실행하도록 설정된 프로그램의 이름 |
CREATED | 컨테이너 생성 후 경과된 시간 |
STATUS | 컨테이너의 현재 상태. 실행 중이라면 ‘UP’, 종료된 상태라면 ‘Exited’ 출력 |
PORTS | 컨테이너에 할당된 포트 번호. ‘ 호스트 포트 번호 -> 컨테이너 포트 번호‘ 형식으로 출력. 포트 번호가 동일할 경우-> 의 뒷부분은 출력되지 않음 |
NAMES | 컨테이너 이름 |
컨테이너 정지
docker stop [컨테이너 이름]
※ 컨테이너를 삭제하려면 컨테이너를 정지시켜야 함.
컨테이너 삭제
docker rm [컨테이너 이름]
※ 정지 상태가 아닌 컨테이너를 대상으로 실행하면 오류 발생 후 컨테이너가 삭제 되지 않음.
포트 포워딩
※ 아래 조건을 만족하는 컨테이너
이름 : apa000ex2
이미지 : 아파치
포트 포워딩 : 8080 -> 80
docker run --name apa000ex2 -d -p 8080:80 httpd
=== ※ 분석 ※ ===
docker run
--name apa000ex2 => 이름 : apa000ex2
-d => 데몬 상태로 실행
-p 8080:80 => 포트 포워딩 : 8080 -> 80
httpd => 아파치 이미지
컨테이너 종료 및 삭제
docker stop apa000ex2
docker rm apa000ex2
※ 이미지 삭제 과정
1. 이미지 목록 확인
docker image ls
2. 이미지 버전 지정하여 다운로드
docker pull httpd:2.2
3. 이미지 목록 확인
docker image ls
4. 버전 지정 이미지 삭제
docker image rm httpd:2.2
'Docker' 카테고리의 다른 글
[Docker] nginx 역방향 프록시를 이용한 도메인 기반 서비스 (역방향 프록시 설명) (2) | 2023.11.09 |
---|---|
[Docker] Front-end / Back-end 컨테이너 분할 후 오류 발생 해결 (Not Found 404) (0) | 2023.11.08 |
[Docker] 도커 컨테이너를 이용하여 taskApp만들기 (mysql, php) (1) | 2023.11.03 |