본문 바로가기

프로젝트 & TIL/일별 공부 기록 (백엔드 스쿨)

35일차 - 도커 볼륨, 이미지 생성

도커 볼륨

docker run -d --restart="always" -p 80:80 nginx

--restart="always" : CentOS 재부팅 시 자동으로 재시작

  

docker run \
	--name=nginx_1 \
	-p 80:80 \
	-v 호스트_폴더_경로:게스트_폴더_경로 \
	-d \
	--restart="always" \
	nginx

호스트 폴더 경로를 mkdir로 미리 생성하고 위와 같이 run 하면 원래 만들어졌어야 할 내부 파일들이 생성되지 않는다.

호스트 폴더 경로로 들어가서 index.html 파일을 생성해주면 접속 시 index.html 내용이 나온다.

(hosts 파일에 site1.com을 192.168~로 작성해서 저장했기 때문에 site1.com으로 접속하면 됨)

  

도커 이미지 생성

1. 이미지 생성을 위한 재료(소스 코드, index.html 등) 만들기

- mkdir 폴더_경로

- cd 폴더_경로

- echo 내용 > index.html

2. 도커 파일(Dockerfile) 생성

- vim Dockerfile

- 아래 내용 입력 후 저장

# 베이스 이미지
FROM nginx

# 도커 컨테이너 내부의 디렉토리 이동
WORKDIR /usr/share/nginx/html

# 호스트 폴더(./) 의 내용을 /usr/share/nginx/html 폴더로 이동
# 기존의 index.html이 우리가 만든 것으로 덮어씌워진다.
COPY ./ ./

# 이 컨테이너는 80을 사용한다
EXPOSE 80

- docker build -t 새로운_이미지_이름 .

- docker images => 생성된 이미지 확인