Docker File - 레시피 만들기

알파로그·2023년 4월 17일
0

Linux 와 Docker

목록 보기
10/28
  • 범용적인 이미지를 우리가 원하는대로 다시 설정하는 방법을 레시피로 기록한다.
    • 나중에 사용할 때 레시피를 이용해 저장 불러오기와 같은 동일한 퀄리티의 파일을 생성할 수 있다.

✏️ Docker File 생성하기

📍 준비하기

  • NGINX_1 에 관련된 프로젝트 생성
mkdir -p /docker_projects/nginx_1/project
  • 해당 디렉토리로 이동
cd /docker_projects/nginx_1/project
  • html 파일 생성
echo '<h1 style="color: blue">Hello Nginx</h1>' > index.html
  • 잘 생성되었는지 확인
cat index.html

📍 레시피 파일 생성하기

  • 레시피 만들기위해 파일 수정
    • a 를 입력해 끼워넣기 모드에서 수행해야 한다.
vim Dockerfile
  • 레시피 입력
    • 입력이 완료되면 저장하고 빠저나온다.
    • 저장은 :wq 를 입력하면 된다.
# 베이스 이미지
FROM nginx

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

# 호스트 폴더(./) 의 내용을 /usr/share/nginx/html 폴더로 이동한다.
# 기존의 index.html 이 지워지고 우리가 만든 재료(index.html)가 저장된다.
COPY ./ ./

# 하는 편이 좋다. 이 컨테이너는 80을 사용한다는 뜻
EXPOSE 80

📍 레시피대로 파일 생성하기

  • 아래의 명령어를 입력하면 레시피대로 이미지가 생성된다.
docker build -t nginx_custom_1 .
  • 도커 이미지 확인하기
    • ⚠️ 정확한 실습을 위해서 지금은 기존 컨테이너와 볼륨 흔적을 삭제
docker images
  • 기존 컨테이너 삭제
docker rm -f nginx_1
  • 볼륨 삭제
rm -rf /docker_projects/nginx_1/volumes

  • 레시피대로 엔진엑스 실행
docker run \
	--name=nginx_1 \
	-p 80:80 \
	-d \
	--restart="always" \
	nginx_custom_1

📍 결과물 확인

  • 이제 언제 어디서든 처음에 NGINX 에 세팅해둔 html 파일을 불러오기 한듯 사용할 수 있다.
profile
잘못된 내용 PR 환영

0개의 댓글