caddy-l4 icon indicating copy to clipboard operation
caddy-l4 copied to clipboard

error dns lookup for upstream tcp service in docker

Open sloev opened this issue 10 months ago • 1 comments

error:

{"level":"error","ts":1738755850.6695697,"logger":"layer4","msg":"handling connection","remote":"77.241.128.12:63522","error":"dial tcp: lookup liquidsoap on 95.215.19.53:53: no such host"}

dockerfile:

FROM caddy:2.9.1-builder AS builder

RUN xcaddy build \
    --with github.com/mholt/caddy-l4

FROM caddy:2.9.1

COPY --from=builder /usr/bin/caddy /usr/bin/caddy

caddyfile:


{
    admin off
    layer4 {
        :9000 {
            route {
                proxy {
                    upstream liquidsoap:9000
                }
            }
        }
        :4242 {
            route {
                proxy {
                    upstream reticulum:4242
                }
            }
        }
    }
}


:2019 {
	metrics /metrics
}

buro.earth {
	root * /var/www/buro.earth
    encode gzip
    file_server {
        hide .git
    }

    header {
        ?Cache-Control "max-age=1800"
    }
}


http://buro.earth {
	root * /var/www/buro.earth
    encode gzip
    file_server {
        hide .git
    }

    header {
        ?Cache-Control "max-age=1800"
    }
}


icecast.buro.earth {
	reverse_proxy icecast:8000
}

http://icecast.buro.earth {
	reverse_proxy icecast:8000
}


docker-compose:

caddy:
    build: ./services/caddy 
    container_name: caddy
    links:
      - icecast
      - reticulum
      - liquidsoap
    restart: on-failure
    environment:
      - XDG_DATA_HOME=/
    cap_add:
      - NET_ADMIN
    volumes:
      - ./services/caddy/Caddyfile:/etc/caddy/Caddyfile
      - ./services/caddy/sites:/var/www
      - ./services/caddy/ssl:/caddy

    healthcheck:
      # https://stackoverflow.com/a/47722899/5008962
      test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:2019/metrics", "||", "exit", "1"]
      interval: 1m30s
      timeout: 10s
      retries: 3
      start_period: 40s


  reticulum:
    image: ghcr.io/markqvist/nomadnet:master
    container_name: reticulum
    restart: unless-stopped

    volumes:
    - ./services/reticulum/nomadnet/:/root/.nomadnetwork/
    - ./services/reticulum/reticulum/:/root/.reticulum/

  icecast:
    image: moul/icecast
    container_name: icecast
    restart: unless-stopped
    environment:
    - ICECAST_SOURCE_PASSWORD=${ICECAST_SOURCE_PASSWORD}
    - ICECAST_ADMIN_PASSWORD=bbb
    - ICECAST_PASSWORD=ccc
    - ICECAST_RELAY_PASSWORD=ddd
    - ICECAST_HOSTNAME=radio.buro.earth



  liquidsoap:
    image: savonet/liquidsoap:rolling-release-v2.3.x
    container_name: liquidsoap
    restart: unless-stopped
    environment:
      - ICECAST_SOURCE_PASSWORD=${ICECAST_SOURCE_PASSWORD}
    volumes:
      - ./services/liquidsoap/scripts/:/scripts
      - ./services/liquidsoap/playlists/:/playlists:rw
      - ./services/liquidsoap/media/:/media:rw
    command:
      - '/scripts/main.liq'
    links:
      - icecast

volumes:
  ssl_data:

sloev avatar Feb 05 '25 11:02 sloev

Are you sure this is a caddy-l4 issue? What if you try executing nslookup liquidsoap 95.215.19.53 inside your Caddy container?

vnxme avatar Feb 05 '25 12:02 vnxme