Hi all!!!!
Im triyin to install pihole with Docker-Compose. All works , but always reserve the 67 udp port.
My docker-compose.yml
pihole:
container_name: pihole
image: pihole/pihole:latest
ports:
- "53:53/tcp"
- "53:53/udp"
- "82:80/tcp"
environment:
- TZ=Europe/Madrid
- WEBPASSWORD=mypass1234
volumes:
- './etc-pihole:/etc/pihole'
- './etc-dnsmasq.d:/etc/dnsmasq.d'
restart: unless-stopped
When is UP, i launch this PS command ,and get 67 udp port is on the ports the container are using ¿?¿?
The problem is, i cant´use the 67 udp port if pi-hole is up
$ docker-compose ps
Name Command State Ports
-----------------------------------------------------------------------------------------------------------------------------------------------
pihole /s6-init Up (healthy) 0.0.0.0:53->53/tcp,:::53->53/tcp, 0.0.0.0:53->53/udp,:::53->53/udp, 67/udp, 0.0.0.0:82->80/tcp,:::82->80/tcp
Of course the DHCP server on PI-HOLE is NOT enabled.
Thanks for help me!
Kindest Regards.
Run on your Docker host machine, what's the result of
sudo ss -tulpn sport = 67
Thanks!
I will do it, when i have more time. Yesterday i need my dhcp online. I will check it asap.
The only thing i can see:
Docker Pi Hole down.
i can install on the host a ISC-DHCP-Server and start it. Because the ports are free.
Uninstall dhcp server.
Docker Pi Hole UP.
I can´t install on the host ISC-DHCP-Server, the dhcp install, but cant start the service because the port 67 are in use.
My workaround... uninstall the ISC-DHCP-Server, and use the docker-compose of pihole removin¡g all the ports and change network mode to host. Perhaps macvlan do the work too. And use the DHCP of pihole instead ISC-DHCP-Server
network_mode: host
Thanks
I doubt that Pi-hole's container iscausing your port 67/udp issue, as your output shows the expected results.
Note that docker ps
lists the ports as exposed (i.e. ports a container can listen on) and published (i.e. ports bound by Docker and mapped to a container).
(...) 67/udp, 0.0.0.0:82->80/tcp (...)
You could also explicitly filter for published and exposed ports, e.g.
docker ps --filter expose=80/tcp
docker ps --filter publish=82/tcp
You can also list the ports that Docker has published for a container via:
docker port <container>
Your docker ps
output already shows that your Pi-hole would expose port 67/upd, but it isn't published, i.e. Docker didn't add any bindings to it - it is free to be used by any process.
While the docker commands would just show ports as claimed by Docker, running the socket statistics command I've provided above would list all processes that bind port 67 on your machine, revealing whether there is indeed a conflict over port 67 on your system.