🐷
自作DockerイメージをTerraform経由で起動する
これは何?
自作DockerイメージをTerraform経由で起動する方法を記載します。自作Dockerイメージは、事前にDocker Hubにアップロード済みです。
使用コード
Terraformの設定ファイルとなります。
main.tf
terraform {
required_providers {
docker = {
source = "kreuzwerker/docker"
version = ">= 3.0.0"
}
}
}
provider "docker" {
host = "unix:///var/run/docker.sock"
}
resource "docker_image" "sinatra_app" {
name = "1s22s1/sinatra_app:latest"
keep_locally = true
}
resource "docker_container" "sinatra_app" {
image = docker_image.sinatra_app.image_id
name = "sinatra_app"
ports {
internal = 4567
external = 4567
}
}
実行手順
実行手順は、次の通りです。
$ terraform init // 初期化処理を行う
$ terraform plan // 構築プランを表示する
$ terraform apply // コンテナを立ち上げる
アプリの起動後 http://127.0.0.1:4567/ へアクセスすると意図通りのレスポンスが返ってきました。
Discussion