Error in starting pi-hole via docker

Good day. I am using Manjaro and since pi-hole doesn't support Manjaro, I am planning to run in via a docker. However, everytime I run docker-compose up --detach, it gives me this error

[Hori ~]# docker-compose up --detach
Creating network "root_default" with the default driver
Creating pihole ... 
Creating pihole ... error

ERROR: for pihole  Cannot start service pihole: driver failed programming external connectivity on endpoint pihole (c88d0a30952642ddda57c2da0af6d7ec33491556c21377ef5063296940e5ff1a): Error starting userland proxy: listen tcp4 0.0.0.0:80: bind: address already in use

ERROR: for pihole  Cannot start service pihole: driver failed programming external connectivity on endpoint pihole (c88d0a30952642ddda57c2da0af6d7ec33491556c21377ef5063296940e5ff1a): Error starting userland proxy: listen tcp4 0.0.0.0:80: bind: address already in use

neofetch

██████████████████  ████████   root@Hori 
██████████████████  ████████   --------- 
██████████████████  ████████   OS: Manjaro Linux x86_64 
██████████████████  ████████   Host: Aspire A514-53 V1.16 
████████            ████████   Kernel: 5.14.7-2-MANJARO 
████████  ████████  ████████   Uptime: 4 hours, 33 mins 
████████  ████████  ████████   Packages: 1530 (pacman) 
████████  ████████  ████████   Shell: bash 5.1.8 
████████  ████████  ████████   Resolution: 1366x768 
████████  ████████  ████████   DE: KDE5 
████████  ████████  ████████   WM: KWin 
████████  ████████  ████████   Theme: [KDE5], Breeze [GTK2/3] 
████████  ████████  ████████   Icons: [KDE5], breath2 [GTK2/3] 
████████  ████████  ████████   Terminal: konsole 
                               CPU: Intel i3-1005G1 (4) @ 3.400GHz 
                               GPU: Intel Iris Plus Graphics G1 
                               Memory: 4143MiB / 7630MiB 

inxi -Fazy

System:
  Kernel: 5.14.7-2-MANJARO x86_64 bits: 64 compiler: gcc v: 11.1.0 
  parameters: BOOT_IMAGE=/boot/vmlinuz-5.14-x86_64 
  root=UUID=3e711149-8ebe-45af-8e9a-78a1cdacff3f rw quiet apparmor=1 
  security=apparmor resume=UUID=d27dc7f4-ce4f-48b8-ba69-9971d9cc4ca0 
  udev.log_priority=3 
  Console: tty pts/4 wm: kwin_x11 DM: SDDM Distro: Manjaro Linux 
  base: Arch Linux 
Machine:
  Type: Laptop System: Acer product: Aspire A514-53 v: V1.16 serial: <filter> 
  Chassis: type: 10 serial: N/A 
  Mobo: IL model: Sneezy_IL v: V1.16 serial: <filter> UEFI: Insyde v: 1.16 
  date: 01/18/2021 
Battery:
  ID-1: BAT0 charge: 32.8 Wh (100.0%) condition: 32.8/53.0 Wh (62.0%) 
  volts: 16.6 min: 15.4 model: PANASONIC KT004 AP19B5L type: Li-ion 
  serial: <filter> status: Full cycles: 386 
CPU:
  Info: Dual Core model: Intel Core i3-1005G1 socket: U3E1 bits: 64 
  type: MT MCP arch: Ice Lake family: 6 model-id: 7E (126) stepping: 5 
  microcode: A6 cache: L2: 4 MiB 
  flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx 
  bogomips: 9524 
  Speed: 3236 MHz min/max: 400/3400 MHz base/boost: 3400/8300 volts: 0.9 V 
  ext-clock: 100 MHz Core speeds (MHz): 1: 3236 2: 3304 3: 3335 4: 3333 
  Vulnerabilities: Type: itlb_multihit status: KVM: VMX disabled 
  Type: l1tf status: Not affected 
  Type: mds status: Not affected 
  Type: meltdown status: Not affected 
  Type: spec_store_bypass 
  mitigation: Speculative Store Bypass disabled via prctl and seccomp 
  Type: spectre_v1 
  mitigation: usercopy/swapgs barriers and __user pointer sanitization 
  Type: spectre_v2 mitigation: Enhanced IBRS, IBPB: conditional, RSB filling 
  Type: srbds status: Not affected 
  Type: tsx_async_abort status: Not affected 
Graphics:
  Device-1: Intel Iris Plus Graphics G1 vendor: Acer Incorporated ALI 
  driver: i915 v: kernel bus-ID: 00:02.0 chip-ID: 8086:8a56 class-ID: 0300 
  Device-2: Chicony HD User Facing type: USB driver: uvcvideo bus-ID: 1-6:7 
  chip-ID: 04f2:b64f class-ID: 0e02 serial: <filter> 
  Display: server: X.Org 1.20.13 compositor: kwin_x11 driver: 
  loaded: modesetting alternate: fbdev,vesa display-ID: :0 screens: 1 
  Screen-1: 0 s-res: 1366x768 s-dpi: 96 s-size: 361x203mm (14.2x8.0") 
  s-diag: 414mm (16.3") 
  Monitor-1: eDP-1 res: 1366x768 hz: 60 dpi: 112 size: 309x173mm (12.2x6.8") 
  diag: 354mm (13.9") 
  OpenGL: renderer: Mesa Intel UHD Graphics (ICL GT1) v: 4.6 Mesa 21.2.2 
  direct render: Yes 
Audio:
  Device-1: Intel Ice Lake-LP Smart Sound Audio vendor: Acer Incorporated ALI 
  driver: snd_hda_intel v: kernel alternate: snd_sof_pci_intel_icl 
  bus-ID: 00:1f.3 chip-ID: 8086:34c8 class-ID: 0401 
  Device-2: C-Media USB PnP Sound Device type: USB 
  driver: hid-generic,snd-usb-audio,usbhid bus-ID: 1-4:20 chip-ID: 0d8c:013a 
  class-ID: 0300 
  Sound Server-1: ALSA v: k5.14.7-2-MANJARO running: yes 
  Sound Server-2: sndio v: N/A running: no 
  Sound Server-3: JACK v: 1.9.19 running: no 
  Sound Server-4: PulseAudio v: 15.0 running: yes 
  Sound Server-5: PipeWire v: 0.3.37 running: yes 
Network:
  Device-1: Intel Ice Lake-LP PCH CNVi WiFi driver: iwlwifi v: kernel 
  port: 4000 bus-ID: 00:14.3 chip-ID: 8086:34f0 class-ID: 0280 
  IF: wlp0s20f3 state: up mac: <filter> 
  Device-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet 
  vendor: Acer Incorporated ALI driver: r8169 v: kernel port: 3000 
  bus-ID: 01:00.0 chip-ID: 10ec:8168 class-ID: 0200 
  IF: enp1s0 state: down mac: <filter> 
  IF-ID-1: br-51f3ddb93098 state: down mac: <filter> 
  IF-ID-2: docker0 state: down mac: <filter> 
Bluetooth:
  Device-1: Intel AX201 Bluetooth type: USB driver: btusb v: 0.8 
  bus-ID: 1-10:8 chip-ID: 8087:0026 class-ID: e001 
  Report: rfkill ID: hci0 rfk-id: 1 state: down bt-service: N/A rfk-block: 
  hardware: no software: no address: see --recommends 
RAID:
  Hardware-1: Intel 82801 Mobile SATA Controller [RAID mode] driver: ahci 
  v: 3.0 port: 4060 bus-ID: 00:17.0 chip-ID: 8086.282a rev: 30 class-ID: 0104 
  Device-1: md126 maj-min: 9:126 type: mdraid level: N/A status: inactive 
  size: N/A 
  Info: report: N/A blocks: 2136 chunk-size: N/A 
  Components: Online: N/A Spare: 
  0: nvme0n1 maj-min: 259:0 size: 476.94 GiB state: S 
  Device-2: md127 maj-min: 9:127 type: mdraid level: N/A status: inactive 
  size: N/A 
  Info: report: N/A blocks: 2944 chunk-size: N/A 
  Components: Online: N/A Spare: 
  0: nvme1n1 maj-min: 259:5 size: 27.25 GiB state: S 
Drives:
  Local Storage: total: 1.4 TiB used: 187.69 GiB (13.1%) 
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Intel model: HBRPEKNX0202A 
  size: 476.94 GiB block-size: physical: 512 B logical: 512 B speed: 15.8 Gb/s 
  lanes: 2 type: SSD serial: <filter> rev: G002 temp: 29.9 C 
  SMART: yes health: PASSED on: 228d 15h cycles: 1,702 
  read-units: 12,246,685 [6.27 TB] written-units: 26,834,539 [13.7 TB] 
  ID-2: /dev/nvme1n1 maj-min: 259:5 vendor: Intel model: HBRPEKNX0202AO 
  size: 27.25 GiB block-size: physical: 512 B logical: 512 B speed: 15.8 Gb/s 
  lanes: 2 type: SSD serial: <filter> rev: K5110440 temp: 35.9 C 
  SMART: yes health: PASSED on: 275d 21h cycles: 1,703 
  read-units: 39,631,078 [20.2 TB] written-units: 42,577,561 [21.7 TB] 
  ID-3: /dev/sda maj-min: 8:0 vendor: Seagate model: ST1000LM048-2E7172 
  family: Barracuda 2.5 5400 size: 931.51 GiB block-size: physical: 4096 B 
  logical: 512 B sata: 3.1 speed: 6.0 Gb/s type: HDD rpm: 5400 
  serial: <filter> rev: 0001 temp: 38 C scheme: MBR 
  SMART: yes state: enabled health: PASSED on: 241d 22h cycles: 1677 
  read: 4.5 TiB written: 3.22 TiB Old-Age: g-sense error rate: 273 Pre-Fail: 
  attribute: Spin_Retry_Count value: 100 worst: 100 threshold: 97 
Partition:
  ID-1: / raw-size: 200 GiB size: 195.86 GiB (97.93%) used: 99.78 GiB (50.9%) 
  fs: ext4 block-size: 4096 B dev: /dev/sda2 maj-min: 8:2 
  ID-2: /boot/efi raw-size: 512 MiB size: 511 MiB (99.80%) 
  used: 308 KiB (0.1%) fs: vfat block-size: 512 B dev: /dev/sda4 maj-min: 8:4 
Swap:
  Kernel: swappiness: 60 (default) cache-pressure: 100 (default) 
  ID-1: swap-1 type: partition size: 8 GiB used: 0 KiB (0.0%) priority: -2 
  dev: /dev/sda3 maj-min: 8:3 
Sensors:
  System Temperatures: cpu: 67.0 C mobo: N/A 
  Fan Speeds (RPM): N/A 
Info:
  Processes: 214 Uptime: 4h 33m wakeups: 1 Memory: 7.45 GiB 
  used: 4.39 GiB (59.0%) Init: systemd v: 249 tool: systemctl Compilers: 
  gcc: 11.1.0 Packages: apt: 0 pacman: 1530 lib: 424 flatpak: 0 
  Shell: Bash (sudo) v: 5.1.8 running-in: konsole inxi: 3.3.06 

netstat -tulpn | grep LISTEN

tcp        0      0 0.0.0.0:53              0.0.0.0:*               LISTEN      618/pihole-FTL      
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      595/cupsd           
tcp        0      0 127.0.0.1:4711          0.0.0.0:*               LISTEN      618/pihole-FTL      
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      745/nginx: master p 
tcp6       0      0 :::53                   :::*                    LISTEN      618/pihole-FTL      
tcp6       0      0 ::1:631                 :::*                    LISTEN      595/cupsd           
tcp6       0      0 ::1:4711                :::*                    LISTEN      618/pihole-FTL      
tcp6       0      0 :::80                   :::*                    LISTEN      745/nginx: master p 
tcp6       0      0 :::1716                 :::*                    LISTEN      1389/kdeconnectd    

nano /etc/resolv.conf

  GNU nano 5.8                  /etc/resolv.conf                             
# Generated by NetworkManager
nameserver 1.1.1.1
nameserver 1.0.0.1
nameserver 2606:4700:4700::1111
# NOTE: the libc resolver may not support more than 3 nameservers.
# The nameservers listed below may not be recognized.
nameserver 2606:4700:4700::1001
























                              [ Read 7 lines ]
^G Help        ^O Write Out   ^W Where Is    ^K Cut         ^T Execute
^X Exit        ^R Read File   ^\ Replace     ^U Paste       ^J Justify

nano /etc/resolvconf.conf

  GNU nano 5.8                /etc/resolvconf.conf                           
# Configuration for resolvconf(8)
# See resolvconf.conf(5) for details
name_servers="::1 127.0.0.1"
resolv_conf_options="trust-ad"
resolv_conf=/etc/resolv.conf
private_interfaces="*"
# Write out unbound configuration file
unbound_conf=/etc/unbound/resolvconf.conf
# If you run a local name server, you should uncomment the below line and
# configure your subscribers configuration files below.
#name_servers=127.0.0.1




















                              [ Read 11 lines ]
^G Help        ^O Write Out   ^W Where Is    ^K Cut         ^T Execute
^X Exit        ^R Read File   ^\ Replace     ^U Paste       ^J Justify

Here is the issue.. You have an instance of nginx listening on port 80 on the host machine (or maybe another docker container?)

Two things you can do, stop nginx or prevent it from listening on port 80, or in your compose file, bind a different port on the host to port 80 on the Pi-hole container. e.g "81:80/tcp", and then you would access the pi-hole web interface via http://pi.hole:81

1 Like

systemctl disable nginx worked. Thanks! One last question...

[Hori ~]# docker-compose up --detach
Starting pihole ... done

what should I do after this?

Make yourself a cup of tea, pat yourself on the back and say "Good Job, @Soumitsu, your ancestors would be proud of you!"

Of course, that's probably not what you meant. Next thing to do is point some clients at it to use it as a DNS server, and then watch the ad-blocking magic happen!

2 Likes

I rebooted my laptop, change the password and now I can access it from the website. thanks!

How was the tea? :grin:

1 Like