Skip to content

Instantly share code, notes, and snippets.

@yuswitayudi
Created June 7, 2022 03:45
  • Select an option

Select an option

Revisions

  1. yuswitayudi created this gist Jun 7, 2022.
    39 changes: 39 additions & 0 deletions main.tf
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,39 @@
    //define docker provider

    terraform {
    required_providers {
    docker = {
    source = "kreuzwerker/docker"
    version = "2.15.0"
    }
    }
    }

    //define domain and auth to pull image from private registry
    //you can use file config.json for auth

    provider "docker" {
    host = "ssh://atmatech@ip_target_server:22"
    registry_auth {
    address = "private_registry_domain"
    username = "user"
    password = "password"
    }
    }

    data "docker_registry_image" "image_name" {
    name = "private_registry_domain/image_name:tag_name"
    }

    resource "docker_image" "image_name" {
    name = data.docker_registry_image.image_name.name
    }

    resource "docker_container" "container_name" {
    name = "container_name"
    image = docker_image.image_name.latest
    ports {
    internal = 80
    external = 8484
    }
    }