大事な物と好きな物とその他

バスケ,読書,エンジニアリング,お酒

terraformを使ってローカルホストでdockerコンテナを立てる

準備

docker

$ docker -v
Docker version 24.0.5, build ced0996
  • terraform
$ terraform -v
Terraform v1.5.6
on linux_amd64

手順

tfファイルを作成

$ cat main.tf

terraform {
required_providers {
    docker = {
    source  = "kreuzwerker/docker"
    version = "~> 3.0.2"
    }
}
}

provider "docker" {
host = "unix:///var/run/docker.sock"
}

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

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

実行

# Terraform初期化
$ terraform init
# プランの確認
$ terraform plan
# 実行
$ terraform apply
  • 確認
$ netstat -lntp | grep 8000
tcp        0      0 0.0.0.0:8000            0.0.0.0:*               LISTEN  

nginx