data "docker_registry_image" "airsonic" { name = "airsonicadvanced/airsonic-advanced:latest" } resource "docker_image" "airsonic" { name = data.docker_registry_image.airsonic.name pull_triggers = [data.docker_registry_image.airsonic.sha256_digest] } resource "docker_container" "airsonic" { image = docker_image.airsonic.image_id name = "airsonic" restart = "always" // Untested depends_on = [ docker_container.mariadb ] env = [ "spring_datasource_url=jdbc:mariadb://192.168.2.127:3306/airsonic", "spring_datasource_username=airsonic", "spring_datasource_password=3qpMTTfHid5hSaagEvu2", ] mounts { target = "/var/music" source = "/share/appdata/airsonic/music" type = "bind" } mounts { target = "/var/podcasts" source = "/share/appdata/airsonic/podcasts" type = "bind" } mounts { target = "/var/playlists" source = "/share/appdata/airsonic/playlists" type = "bind" } mounts { target = "/var/airsonic" source = "/share/appdata/airsonic/data" type = "bind" } volumes { container_path = "/data" volume_name = "truenas-arr" } networks_advanced { name = docker_network.bridge.name ipv4_address = "192.168.2.83" } networks_advanced { name = docker_network.mariadb.name } lifecycle { ignore_changes = [ ulimit, log_opts ] } }