원도우

테라폼을 사용하여 Docker 예제를 실행하는 방법

변군이글루 2023. 8. 6. 22:42
반응형

테라폼(Terraform)을 사용하여 Docker 예제를 실행하는 방법

테라폼을 사용하여 로컬 Docker 환경에 Nginx 웹 서버 컨테이너를 실행하는 간단한 예제를 다룰 것입니다.

1. 테라폼 설치

테라폼이 설치되어 있어야 합니다.

2. 테라폼 파일 설정

새로운 디렉토리를 만들고 그 안에 테라폼 설정 파일인 main.tf 를 생성합니다. 해당 파일에 다음과 같이 작성합니다.

terraformfordocker
main.tf
terraform {
  required_providers {
    docker = {
      source  = "kreuzwerker/docker"
      version = "~> 3.0.1"
    }
  }
}

provider "docker" {
  host    = "npipe:////.//pipe//docker_engine"
}

resource "docker_image" "nginx" {
  name         = "nginx:latest"
  keep_locally = false
}

resource "docker_container" "nginx" {
  image = docker_image.nginx.image_id
  name  = "tutorial"
  ports {
    internal = 80
    external = 8000
  }
}

주의: 윈도우 도커 호스트 소켓 위치를 지정해야 합니다(host = "npipe:////./pipe/docker_engine").

3. 테라폼 초기화

터미널 또는 명령 프롬프트에서 해당 디렉토리로 이동한 다음, 테라폼을 초기화합니다.

terraform init

t1

4. 테라폼 실행

테라폼을 사용하여 도커 컨테이너를 생성합니다.

terraform apply

t2

실행 중에 "yes"를 입력하여 변경 사항을 승인합니다.

t3

이제 테라폼이 Nginx 웹 서버 컨테이너를 생성합니다.

5. 컨테이너 확인

Docker를 사용하여 컨테이너가 정상적으로 실행되었는지 확인할 수 있습니다. PowerShell이나 명령 프롬프트에서 다음과 같이 입력합니다.

docker ps
>docker ps
CONTAINER ID   IMAGE          COMMAND                  CREATED         STATUS         PORTS                  NAMES
3d6a97ea4afd   89da1fb6dcb9   "/docker-entrypoint.…"   2 minutes ago   Up 2 minutes   0.0.0.0:8000->80/tcp   tutorial
728x90

t4

위 명령을 실행하면 실행 중인 컨테이너가 나열됩니다.

6. 웹 브라우저에서 확인

웹 브라우저를 열고 http://localhost:8000 를 입력하여 Nginx 웹 서버에 접속합니다. Nginx 웹 페이지가 표시되면 성공적으로 컨테이너가 실행된 것입니다.

http://localhost:8000

t5

7. 리소스 정리

컨테이너를 삭제하고 인프라스트럭처를 정리하려면 테라폼 명령을 사용합니다.

terraform destroy

t6

실행 중에 "yes"를 입력하여 변경 사항을 승인합니다.

t7

이 명령을 실행하면 생성한 도커 컨테이너와 관련된 모든 리소스가 삭제됩니다.

 

이렇게 하면 테라폼을 사용하여 Docker 예제를 실행할 수 있습니다. 원하는 변경 사항을 만들고 인프라스트럭처를 자유롭게 관리할 수 있습니다.

 

728x90
반응형