본문 바로가기
Docker/실습

[Docker-실습] 4.Container 만들기(2)

by Haengsin 2021. 8. 11.

(목표) 주어진 script를 실행하는 컨테이너를 빌드하시오.

- 컨테이너 이름 : fortune:20.02

- dockerfile의 내용

   - base image: debian

   - 컨테이너에 아래의 webpage.sh 파일을 복사

 

webpage.sh
#!/bin/bash
mkdir /htdocs
while : 
do
 /usr/games/fortune > /htdocs/index.html
 sleep 10
done

 

   - 컨테이너에 fortune 애플리케이션 설치

   - 컨테이너 실행 시 저장한 webpage.sh가 실행되도록 구성

 

 

 

 

1. 디렉토리 생성

$ mkdir fortune

$ cd fortune

(2) script 파일 생성

$ vi webpage.sh

webpage.sh
#!/bin/bash
mkdir /htdocs
while : 
do
 /usr/games/fortune > /htdocs/index.html
 sleep 10
done

(2) dockerfile 작성

$ vi dockerfile

dockerfile

FROM debian:latest
COPY webpage.sh /
RUN apt-get update
RUN apt-get install -y fortune
#RUN chmod +x /webpage.sh
RUN ["chmod","+x","./webpage.sh"]  
CMD ["/webpage.sh"]
EXPOSE 80

- webpage.sh 파일을 COPY 후,  실행 권한이 없으므로 추가해줘야 함. RUN ["chmod","+x","./webpage.sh"]

 

$ docker build -t metalk2003/fortune:20.02 .

 

$ docker run -d -p 80:80 --name fortune metalk2003/fortune:20.02

 

$ docker push metalk2003/fortune:20.02