소개
Docker 는 애플리케이션을 효율적으로 개발하고 전달하며 실행할 수 있게 해주는 강력한 플랫폼입니다. 그중 docker create 명령어는 특정 이미지를 바탕으로 실제 실행 가능한 컨테이너 인스턴스를 생성하는 역할을 합니다. 이번 챌린지를 통해 여러분은 docker create 명령어를 사용하여 컨테이너를 생성하는 전 과정을 단계별로 실습하게 됩니다.
이미지를 통한 컨테이너 생성
이번 단계에서는 docker create 명령어를 사용하여 기본 이미지를 기반으로 새로운 컨테이너를 생성하는 방법을 알아봅니다.
목표
httpd이미지를 사용하여 새로운 컨테이너를 생성하세요.
예시
이 단계를 마치면 다음과 같은 작업을 수행할 수 있어야 합니다:
- 터미널 또는 커맨드 프롬프트를 엽니다.
httpd이미지를 기반으로 새 컨테이너를 생성합니다.
- 이 명령어를 처음 실행하는 경우:

- 이전에 실행한 적이 있는 경우:

- 컨테이너가 정상적으로 생성되었는지 확인합니다.

힌트
만약 사용하려는 컨테이너 이름이 이미 존재한다면, docker rm -f xxx(container-name) 명령어를 사용하여 기존 컨테이너를 삭제할 수 있습니다.
요구 사항
- 로컬 환경에 Docker 가 설치되어 있어야 합니다.
컨테이너 이름 지정하기
이번 단계에서는 --name 옵션을 사용하여 컨테이너에 원하는 이름을 부여하는 방법을 배웁니다.
목표
httpd이미지를 사용하여my-httpd라는 이름의 컨테이너를 생성하세요.
예시
이 단계를 마치면 다음과 같은 작업을 수행할 수 있어야 합니다:
- 터미널 또는 커맨드 프롬프트를 엽니다.
httpd이미지를 기반으로my-httpd라는 이름의 컨테이너를 생성합니다.

- 컨테이너가 지정한 이름으로 생성되었는지 확인합니다.

팁
컨테이너 이름이 중복되어 오류가 발생하면 docker rm -f xxx(container-name) 명령어로 정리한 후 다시 시도하세요.
요구 사항
- 로컬 환경에 Docker 가 설치되어 있어야 합니다.
포트 매핑 설정
이번 단계에서는 -p 옵션을 사용하여 호스트와 컨테이너 간의 포트를 연결하는 방법을 배웁니다.
목표
- 호스트의
8080포트를my-httpd2라는 이름의 컨테이너 내부80포트에 매핑하세요.
예시
이 단계를 마치면 다음과 같은 작업을 수행할 수 있어야 합니다:
- 터미널 또는 커맨드 프롬프트를 엽니다.
httpd이미지를 사용하여my-httpd2컨테이너를 생성하고, 호스트의8080포트와 컨테이너의80포트를 연결합니다.

- 컨테이너 설정에 호스트 포트 매핑이 올바르게 적용되었는지 확인합니다.

팁
컨테이너 이름이 이미 사용 중이라면 docker rm -f xxx(container-name) 명령어를 사용하세요.
요구 사항
- 로컬 환경에 Docker 가 설치되어 있어야 합니다.
환경 변수 설정
이번 단계에서는 -e 옵션을 사용하여 컨테이너 내부의 환경 변수를 설정하는 방법을 배웁니다.
목표
my-httpd3라는 이름의 컨테이너에서NGINX_HOST환경 변수 값을example.com으로 설정하세요.
예시
이 단계를 마치면 다음과 같은 작업을 수행할 수 있어야 합니다:
- 터미널 또는 커맨드 프롬프트를 엽니다.
httpd이미지를 기반으로my-httpd3컨테이너를 생성하고,TEST-ENV환경 변수를test-value로 설정합니다.

- 컨테이너 설정 내에 해당 환경 변수가 포함되어 있는지 확인합니다.

팁
이름 충돌이 발생하면 docker rm -f xxx(container-name) 명령어로 기존 컨테이너를 삭제하세요.
요구 사항
- 로컬 환경에 Docker 가 설치되어 있어야 합니다.
볼륨 마운트 설정
이번 단계에서는 -v 옵션을 사용하여 호스트의 디렉토리를 컨테이너와 공유하는 볼륨 마운트 방법을 배웁니다.
목표
- 호스트의
/var/www디렉토리를my-httpd4컨테이너의/usr/share/nginx/html디렉토리에 마운트하세요.
예시
이 단계를 마치면 다음과 같은 작업을 수행할 수 있어야 합니다:
- 터미널 또는 커맨드 프롬프트를 엽니다.
httpd이미지를 기반으로my-httpd4컨테이너를 생성하고, 호스트의/var/www경로를 컨테이너의/usr/share/nginx/html경로로 마운트합니다.

- 컨테이너 설정에 볼륨 마운트 정보가 올바르게 구성되었는지 확인합니다.

팁
컨테이너 이름이 중복될 경우 docker rm -f xxx(container-name) 명령어를 사용하세요.
요구 사항
- 로컬 환경에 Docker 가 설치되어 있어야 합니다.
요약
이번 챌린지를 통해 여러분은 docker create 명령어를 사용하여 컨테이너를 생성하는 다양한 방법을 단계별로 익혔습니다. 이미지를 통한 기본 생성부터 이름 지정, 포트 매핑, 환경 변수 설정, 그리고 볼륨 마운트까지 핵심적인 옵션들을 실습했습니다. 이러한 기술을 바탕으로 Docker 환경에서 애플리케이션을 실행하기 위한 최적의 컨테이너 설정을 구성할 수 있게 되었습니다.



