LINUX

[Docker] 도커 이미지, 컨테이너 개념

jineus 2020. 12. 7. 18:24
728x90
반응형

[이미지 생성 ~ 컨테이너 접속 과정 (ex. centos)]

1. 이미지 검색
2. 이미지 다운로드
3. 이미지 기반 컨테이너 생성
4. 컨테이너 동작
5. 컨테이너 접속

#이미지 검색 / official 이미지 검색 ( centos 이미지 검색 예시 )
docker search centos  /  docker search --filter "is-official=true" centos

#이미지 다운로드 (centos 이미지 다운로드 예시)
docker pull centos

#이미지 확인
docker images

#다운받은 이미지 기반 컨테이너 생성(centos 이미지 기반 컨테이너 생성 예시)
docker create --name 컨테이너명 -it centos

#컨테이너 목록 확인
docker ps -a

#컨테이너 동작
docker start 컨테이너명

#컨테이너 접속
docker attach 컨테이너명

#컨테이너 종료
ctrl + d / exit

#실행중인 컨테이너 백그라운드에서 돌리기 / 실행전 컨테이너 백그라운드에서 돌리기
ctrl + p  -> ctrl + q  / docker run -d 컨테이너명

#run으로 한번에 컨테이너 생성 및 실행하기
docker run -it --name 컨테이너명 centos(이미지)

 

docker images

 

 

[Docker 이미지 추가하는 방법 3가지]

1. pull ==> 이미 만들어진 docker 이미지를 가져오기

2. 컨테이너로부터 이미지 새로 만들기

3. Dockerfile을 빌드해서 이미지 만들기 ==> Docker만의 정의하는 파일(Dockerfile)

 

 

[포트포워딩]

1. 컨테이너 생성 ==> 기본적으로 외부와 통신을 못하게 되어있다.

2. 외부와의 통신할 포트를 지정해줘야 함. ==> 컨테이너 생성할 때 옵션 붙이면 포트 지정 가능.

# 외부에서 Docker host의 8080 포트로 요청이 들어오면, 
   컨테이너의 80 포트로 요청을 포워딩하겠다는 의미.

docker run -d -p 8080:80 --name 컨테이너명 httpd

 

728x90
반응형