1. 문제

  • 컨테이너 이름: fortune:20.02
  • Dockerfile에 포함될 내용
    • 베이스 이미지: debian
    • 컨테이너에 아래의 webpage.sh 파일 복사
    • 컨테이너에 fortune 애플리케이션 설치
    • 컨테이너 실행 시 저장한 webpage.sh가 실행되게 하기
  • webpage.sh
    #!/bin/bash
    mkdir /htdocs
    while :
    do
      /usr/games/fortune > /htdocs/index.html
      sleep 10
    done
    


2. Dockerfile 생성

FROM debian:latest
COPY webpage.sh /
RUN apt-get update
RUN apt-get install -y fortune
RUN ["chmod","+x","./webpage.sh"]  
CMD ["/webpage.sh"]
  • webpage.sh 파일을 복사하면 권한이 없기 때문에 권한 부여해줘야 함


3. 이미지 build

cd fortune
docker build -t fortune:20.02 .

스크린샷 2023-06-27 오전 9 42 21


4. hub에 push

docker push fortune:20.02

error

denied: requested access to the resource is denied error


1) docker hub login

  • docker hub 회원가입
  • docker hub login 명령어 입력 후 username, pwd 입력

스크린샷 2023-06-27 오전 9 54 04


2) docker image tag명 변경

  • docker image tag fortune:20.02 (username)/fortune:20.02

스크린샷 2023-06-27 오전 9 54 17


3) 다시 push

  • docker push (username)/fortune:20.02

스크린샷 2023-06-27 오전 9 54 25


4) docker hub에서 확인

스크린샷 2023-06-27 오전 9 54 48