문제
다음 조건을 만족하는 도커 이미를 생성하고 본인의 도커 허브에 등록하시오.
제한사항1. 아래와 같이 컨테이너 실행이 가능해야 함
> docker container run -it --rm DOCKER_IMAGE_NAME_IN_YOUR_DOCKER_HUB
제한사항2. 컨테이너 실행 후 아래와 같이 동작해야 함
> docker container run --rm -it DOCKER_IMAGE_NAME_IN_YOUR_DOCKER_HUB
출력할 1 ~ 20단을 입력하세요. (종료하려면 Q를 입력) : x
숫자 또는 Q를 입력하세요.
출력할 1 ~ 20단을 입력하세요. (종료하려면 Q를 입력) : 0
1 ~ 20 사이의 숫자를 입력하세요.
출력할 1 ~ 20단을 입력하세요. (종료하려면 Q를 입력) : 21
1 ~ 20 사이의 숫자를 입력하세요.
출력할 1 ~ 20단을 입력하세요. (종료하려면 Q를 입력) : 1
1단
1 * 1 = 1
1 * 2 = 2
1 * 3 = 3
1 * 4 = 4
1 * 5 = 5
1 * 6 = 6
1 * 7 = 7
1 * 8 = 8
1 * 9 = 9
출력할 1 ~ 20단을 입력하세요. (종료하려면 Q를 입력) : 20
20단
20 * 1 = 20
20 * 2 = 40
20 * 3 = 60
20 * 4 = 80
20 * 5 = 100
20 * 6 = 120
20 * 7 = 140
20 * 8 = 160
20 * 9 = 180
출력할 1 ~ 20단을 입력하세요. (종료하려면 Q를 입력) : Q
프로그램을 종료합니다.
제한사항3. 도커 이미지 생성에 사용하는 베이스 이미지와 개발 언어는 제한 없음
제한사항4. 제시한 출력 메시지와 형식을 준수
평가기준
1. 도커 허브에 이미지가 등록되었는가?
2. 도커 컨테이너가 정상적으로 실행되는가?
3. 프로그램이 요구사항을 만족하는가?
- 숫자와 문자 Q만 입력 가능한가?
- 1 ~ 20 사이의 숫자만 입력 가능한가?
- Q를 입력했을 때 프로그램이 종료되는가?
- 제시한 메시지와 출력 형식에 맞춰서 출력되는가?
4. Dockerfile의 내용이 정확한가?
5. 제출 기한과 방식을 준수했는가?
예시
C:\exam\gugudan.py
while True:
dan = input("출력할 1 ~ 20단을 입력하세요. (종료하려면 Q를 입력) : ")
if dan == 'Q':
print("프로그램을 종료합니다.")
break
if not dan.isnumeric():
print("숫자 또는 Q를 입력하세요.")
continue
dan = int(dan)
if dan < 1 or dan > 20:
print("1 ~ 20 사이의 숫자를 입력하세요.")
continue
print("{}단".format(dan))
for i in range(1,10):
print("{:2d} * {:2d} = {:3d}".format(dan, i, dan * i))
C:\exam\Dockerfile
FROM python:3
WORKDIR /usr/src/app
COPY gugudan.py .
CMD [ "python", "./gugudan.py" ]
docker image build 및 push
PS C:\exam> docker image build -t myanjini/gugudan .
PS C:\exam> docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
myanjini/gugudan latest b8fb3d47101e 42 minutes ago 915MB
python latest 6beb0d435def 7 days ago 911MB
PS C:\exam> docker image push myanjini/gugudan
'수업자료' 카테고리의 다른 글
반응형 웹 구축 1 (0) | 2021.12.14 |
---|---|
보안융합 필답평가 풀이 2021.11.10 (0) | 2021.11.02 |
보안융합 필답평가 풀이 2021.10.13 (0) | 2021.10.06 |
보안융합 수행평가 풀이 2021.04.07 (0) | 2021.03.31 |
보안융합 필답평가 풀이 2021.04.07 (0) | 2021.03.31 |
댓글