Docker Create 명령어 활용하기

DockerBeginner
지금 연습하기

소개

Docker 는 애플리케이션을 효율적으로 개발하고 전달하며 실행할 수 있게 해주는 강력한 플랫폼입니다. 그중 docker create 명령어는 특정 이미지를 바탕으로 실제 실행 가능한 컨테이너 인스턴스를 생성하는 역할을 합니다. 이번 챌린지를 통해 여러분은 docker create 명령어를 사용하여 컨테이너를 생성하는 전 과정을 단계별로 실습하게 됩니다.

이 콘텐츠는 챌린지 형태입니다. 가이드가 제공되는 일반 실습과 달리, 학습 단계를 그대로 따라가는 것이 아니라 스스로 과제를 해결해야 합니다. 챌린지는 다소 난이도가 있을 수 있으나, 막히는 부분이 있다면 Labby 와 상담하거나 모범 답안을 확인해 보세요. 통계에 따르면 이 챌린지는 초급 수준이며, 96%의 통과율과 학습자들로부터 100%의 긍정적인 평가를 기록하고 있습니다.

이미지를 통한 컨테이너 생성

이번 단계에서는 docker create 명령어를 사용하여 기본 이미지를 기반으로 새로운 컨테이너를 생성하는 방법을 알아봅니다.

목표

  • httpd 이미지를 사용하여 새로운 컨테이너를 생성하세요.

예시

이 단계를 마치면 다음과 같은 작업을 수행할 수 있어야 합니다:

  1. 터미널 또는 커맨드 프롬프트를 엽니다.
  2. httpd 이미지를 기반으로 새 컨테이너를 생성합니다.
  • 이 명령어를 처음 실행하는 경우:
First Docker container creation
  • 이전에 실행한 적이 있는 경우:
Repeating Docker create command
  1. 컨테이너가 정상적으로 생성되었는지 확인합니다.
Verify container creation status

힌트

만약 사용하려는 컨테이너 이름이 이미 존재한다면, docker rm -f xxx(container-name) 명령어를 사용하여 기존 컨테이너를 삭제할 수 있습니다.

요구 사항

  • 로컬 환경에 Docker 가 설치되어 있어야 합니다.
✨ 솔루션 확인 및 연습

컨테이너 이름 지정하기

이번 단계에서는 --name 옵션을 사용하여 컨테이너에 원하는 이름을 부여하는 방법을 배웁니다.

목표

  • httpd 이미지를 사용하여 my-httpd라는 이름의 컨테이너를 생성하세요.

예시

이 단계를 마치면 다음과 같은 작업을 수행할 수 있어야 합니다:

  1. 터미널 또는 커맨드 프롬프트를 엽니다.
  2. httpd 이미지를 기반으로 my-httpd라는 이름의 컨테이너를 생성합니다.
Creating container my-httpd
  1. 컨테이너가 지정한 이름으로 생성되었는지 확인합니다.
docker container verification

컨테이너 이름이 중복되어 오류가 발생하면 docker rm -f xxx(container-name) 명령어로 정리한 후 다시 시도하세요.

요구 사항

  • 로컬 환경에 Docker 가 설치되어 있어야 합니다.
✨ 솔루션 확인 및 연습

포트 매핑 설정

이번 단계에서는 -p 옵션을 사용하여 호스트와 컨테이너 간의 포트를 연결하는 방법을 배웁니다.

목표

  • 호스트의 8080 포트를 my-httpd2라는 이름의 컨테이너 내부 80 포트에 매핑하세요.

예시

이 단계를 마치면 다음과 같은 작업을 수행할 수 있어야 합니다:

  1. 터미널 또는 커맨드 프롬프트를 엽니다.
  2. httpd 이미지를 사용하여 my-httpd2 컨테이너를 생성하고, 호스트의 8080 포트와 컨테이너의 80 포트를 연결합니다.
docker create container port mapping
  1. 컨테이너 설정에 호스트 포트 매핑이 올바르게 적용되었는지 확인합니다.
Container port mapping check

컨테이너 이름이 이미 사용 중이라면 docker rm -f xxx(container-name) 명령어를 사용하세요.

요구 사항

  • 로컬 환경에 Docker 가 설치되어 있어야 합니다.
✨ 솔루션 확인 및 연습

환경 변수 설정

이번 단계에서는 -e 옵션을 사용하여 컨테이너 내부의 환경 변수를 설정하는 방법을 배웁니다.

목표

  • my-httpd3라는 이름의 컨테이너에서 NGINX_HOST 환경 변수 값을 example.com으로 설정하세요.

예시

이 단계를 마치면 다음과 같은 작업을 수행할 수 있어야 합니다:

  • 터미널 또는 커맨드 프롬프트를 엽니다.
  • httpd 이미지를 기반으로 my-httpd3 컨테이너를 생성하고, TEST-ENV 환경 변수를 test-value로 설정합니다.
Creating container with environment
  • 컨테이너 설정 내에 해당 환경 변수가 포함되어 있는지 확인합니다.
verify container environment variable

이름 충돌이 발생하면 docker rm -f xxx(container-name) 명령어로 기존 컨테이너를 삭제하세요.

요구 사항

  • 로컬 환경에 Docker 가 설치되어 있어야 합니다.
✨ 솔루션 확인 및 연습

볼륨 마운트 설정

이번 단계에서는 -v 옵션을 사용하여 호스트의 디렉토리를 컨테이너와 공유하는 볼륨 마운트 방법을 배웁니다.

목표

  • 호스트의 /var/www 디렉토리를 my-httpd4 컨테이너의 /usr/share/nginx/html 디렉토리에 마운트하세요.

예시

이 단계를 마치면 다음과 같은 작업을 수행할 수 있어야 합니다:

  1. 터미널 또는 커맨드 프롬프트를 엽니다.
  2. httpd 이미지를 기반으로 my-httpd4 컨테이너를 생성하고, 호스트의 /var/www 경로를 컨테이너의 /usr/share/nginx/html 경로로 마운트합니다.
Creating container with volume mount
  1. 컨테이너 설정에 볼륨 마운트 정보가 올바르게 구성되었는지 확인합니다.
verify container volume mount

컨테이너 이름이 중복될 경우 docker rm -f xxx(container-name) 명령어를 사용하세요.

요구 사항

  • 로컬 환경에 Docker 가 설치되어 있어야 합니다.
✨ 솔루션 확인 및 연습

요약

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