I have a container with dns-server
version: "3"
services:
dns-server:
container_name: dns-server
hostname: dns-server
image: technitium/dns-server:latest
# For DHCP deployments, use "host" network mode and remove all the port mappings, including the ports array by commenting them
# network_mode: "host"
ports:
- "5380:5380/tcp" #DNS web console (HTTP)
- "53443:53443/tcp" #DNS web console (HTTPS)
- "53:53/udp" #DNS service
- "53:53/tcp" #DNS service
environment:
- DNS_SERVER_DOMAIN=dns-server #The primary domain name used by this DNS Server to identify itself.
- DNS_SERVER_ADMIN_PASSWORD=password #DNS web console admin user password.
- DNS_SERVER_WEB_SERVICE_HTTP_PORT=5380 #The TCP port number for the DNS web console over HTTP protocol.
- DNS_SERVER_WEB_SERVICE_HTTPS_PORT=53443 #The TCP port number for the DNS web console over HTTPS protocol.
- DNS_SERVER_WEB_SERVICE_ENABLE_HTTPS=true #Enables HTTPS for the DNS web console.
- DNS_SERVER_WEB_SERVICE_USE_SELF_SIGNED_CERT=false #Enables self signed TLS certificate for the DNS web console.
- DNS_SERVER_ENABLE_BLOCKING=false #Sets the DNS server to block domain names using Blocked Zone and Block List Zone.
- DNS_SERVER_FORWARDERS=1.1.1.1, 8.8.8.8 #Comma separated list of forwarder addresses.
- DNS_SERVER_LOG_USING_LOCAL_TIME=true #Enable this option to use local time instead of UTC for logging.
volumes:
- config:/etc/dns
networks:
- dns-network
restart: unless-stopped
sysctls:
- net.ipv4.ip_local_port_range=1024 65000
volumes:
config:
networks:
dns-network:
name: dns-network
driver: bridge
Then I have 2 more containers for gitea and jenkins, both use the dns-network network.
version: "3"
networks:
gitea-network:
name: dns-network
external: true
services:
server:
image: gitea/gitea:1.17.3
container_name: gitea
environment:
- USER_UID=1000
- USER_GID=1000
- GITEA__database__DB_TYPE=mysql
- GITEA__database__HOST=db:3306
- GITEA__database__NAME=gitea
- GITEA__database__USER=gitea
- GITEA__database__PASSWD=gitea
restart: always
networks:
- gitea-network
volumes:
- ./gitea:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
ports:
- "3000:3000"
- "222:22"
depends_on:
- db
db:
image: mysql:8
restart: always
environment:
- MYSQL_ROOT_PASSWORD=gitea
- MYSQL_USER=gitea
- MYSQL_PASSWORD=gitea
- MYSQL_DATABASE=gitea
networks:
- gitea-network
volumes:
- ./mysql:/var/lib/mysql
version: '3'
services:
jenkins:
image: jenkins/jenkins:lts
container_name: jenkins
user: root
ports:
- "35000:8080"
volumes:
- jenkins_home:/var/jenkins_home
- /home/david/docker-jenkins/run.sh:/var/jenkins_home/run.sh
- /home/david/docker-jenkins/ssh-keys:/var/jenkins_home/.ssh
networks:
- jenkins-network
networks:
jenkins-network:
name: dns-network
external: true
volumes:
jenkins_home:
I’d like to use jenkins.webdev
inside gitea and gitea.webdev
inside jenkins, however both fail to resolve the other’s hostname.
I’ve tried adding dns: dns-server
but no luck.
Right now, on gitea I’m getting Delivery: Post "https://jenkins.webdev/gitea-webhook/post": dial tcp: lookup jenkins.webdev on 127.0.0.11:53: server misbehaving
and if I try ping from a shell I get ping: bad address 'jenkins.webdev'
Edit: Here’s my sudo docker network inspect dns-network
output
[
{
"Name": "dns-network",
"Id": "03498e5502b7a014c6f3d1d72b6940c94009367382d5108c520b50f56c2f5a3a",
"Created": "2024-04-07T17:42:56.248528108Z",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": null,
"Config": [
{
"Subnet": "172.20.0.0/16",
"Gateway": "172.20.0.1"
}
]
},
"Internal": false,
"Attachable": false,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {
"676099268ebbd1c3e02bb5f5a1dc12175e8cce499e74c97c3801305df2c3db31": {
"Name": "docker-gitea-db-1",
"EndpointID": "e81ae1733abf14a0992754370108fc0df3655dad71af28cb8c6ed74f756c6503",
"MacAddress": "02:42:ac:14:00:03",
"IPv4Address": "172.20.0.3/16",
"IPv6Address": ""
},
"7b4f44a9ba13554723917aa29a20358e4ff1861511fd95b98ef4614a71e9c7e2": {
"Name": "gitea",
"EndpointID": "6bb2bbf7716d1a55be181b42e8b668731924b5b2abe95787c47b7295fa04ccea",
"MacAddress": "02:42:ac:14:00:04",
"IPv4Address": "172.20.0.4/16",
"IPv6Address": ""
},
"980daf8414bb0f12f954c534c8b64b935396f557e52e7ab3f70961b99afa4290": {
"Name": "dns-server",
"EndpointID": "fdafade69db331657b30f02e364c160c8d75a944d5b79c02d055aea1b83dfd99",
"MacAddress": "02:42:ac:14:00:02",
"IPv4Address": "172.20.0.2/16",
"IPv6Address": ""
},
"b0e8420a7318ba609bc1e2c626d8675a1eba6e9b7aa292ed69ba16c3cc1f794f": {
"Name": "jenkins",
"EndpointID": "73e197a284032fee61b50b1ef7111252ae74665d08e40fc1933abc6aa289418d",
"MacAddress": "02:42:ac:14:00:05",
"IPv4Address": "172.20.0.5/16",
"IPv6Address": ""
}
},
"Options": {},
"Labels": {
"com.docker.compose.network": "dns-network",
"com.docker.compose.project": "docker-dnsserver",
"com.docker.compose.version": "2.20.3"
}
}
]