The First run of Terraform Apply gives "Error: Unable to start container: Error response from daemon: network vaccine-net not found"
Second run: everything works fine.
I thought Terraform manages the dependencies itself - obviously it fails here. Do I have a mistake in my file? Or can i make dependencies myself?
.tf File:
# Setting up docker network
resource "docker_network" "private_network" {
name = "vaccine-net"
attachable = true
ipam_config {
subnet = "10.0.1.0/24"
gateway = "10.0.1.254"
}
}
# create db container
resource "docker_container" "bootstrapper" {
name = "bootstrapper"
image = "vaccine/bootstrapper"
networks_advanced {
name = "vaccine-net"
ipv4_address ="10.0.1.1"
}
}
Are you sure your network is created before the container is created? I see no link between your network and container. Try with reference to the docker network (preferred):
# Setting up docker network
resource "docker_network" "private_network" {
name = "vaccine-net"
attachable = true
ipam_config {
subnet = "10.0.1.0/24"
gateway = "10.0.1.254"
}
}
# create db container
resource "docker_container" "bootstrapper" {
name = "bootstrapper"
image = "vaccine/bootstrapper"
networks_advanced {
name = "${docker_network.private_network.name}"
ipv4_address ="10.0.1.1"
}
}
Or explicitly with depends_on
:
# Setting up docker network
resource "docker_network" "private_network" {
name = "vaccine-net"
attachable = true
ipam_config {
subnet = "10.0.1.0/24"
gateway = "10.0.1.254"
}
}
# create db container
resource "docker_container" "bootstrapper" {
name = "bootstrapper"
image = "vaccine/bootstrapper"
networks_advanced {
name = "vaccine-net"
ipv4_address ="10.0.1.1"
}
depends_on = [docker_network.private_network]
}