I have had mailcow running well for over a year.
Yesterday, I decided it was time to update. I ssh into the server. sudo su, cd /opt/mailcow-dockerized, and ./update.sh. I consistently receive this error:
Detecting if your IP is listed on Spamhaus Bad ASN List...
Check failed! Maybe a DNS or Network problem?
Checking internet connection... OK
Detecting which build your mailcow runs on...
You are receiving stable updates (master).
To change that run the update.sh Script one time with the --nightly parameter to switch to nightly builds.
Checking for newer update script...
fatal: unable to access 'https://github.com/mailcow/mailcow-dockerized/': Could not resolve host: github.com
Updated 0 paths from 12754a3b
Are you sure you want to update mailcow: dockerized? All containers will be stopped. [y/N] y
Great! Native IPv6 NAT is active.
Validating docker-compose stack configuration...
Checking for conflicting bridges...
# Warning: iptables-legacy tables present, use iptables-legacy to see them
Saving diff to update_diffs/diff_before_update_2024-02-21-12-47-43...
Prefetching images...
fatal: unable to access 'https://github.com/mailcow/mailcow-dockerized/': Could not resolve host: github.com
1.21: Pulling from mailcow/unbound
619be1103602: Pull complete
1f4254c93fbb: Pull complete
cd03c5664d5d: Pull complete
ff6211bd3a5f: Pull complete
39075a9d6a11: Pull complete
Digest: sha256:a2ae19356feab1aa8dbc26e3dcd1c7b6fd87a07763316e5b5dc52b4b32722920
Status: Downloaded newer image for mailcow/unbound:1.21
docker.io/mailcow/unbound:1.21
10.5: Pulling from library/mariadb
Digest: sha256:f5a27c861ffbcbeddcd6855dcfde5237df16640f3f97f1736cb7046d3a9b85ba
Status: Image is up to date for mariadb:10.5
docker.io/library/mariadb:10.5
Error response from daemon: Get "https://registry-1.docker.io/v2/library/redis/manifests/sha256:1b503bb77079ba644371969e06e1a6a1670bb34c2251107c0fc3a21ef9fdaeca": dial tcp [2600:1f18:2148:bc02:445d:9ace:d20b:c303]:443: connect: network is unreachable
Error pulling redis:7-alpine, retrying...
Error response from daemon: Get "https://registry-1.docker.io/v2/": dial tcp [2600:1f18:2148:bc01:571f:e759:a87a:2961]:443: connect: network is unreachable
Error pulling redis:7-alpine, retrying...
Error response from daemon: Get "https://registry-1.docker.io/v2/": dial tcp [2600:1f18:2148:bc01:571f:e759:a87a:2961]:443: connect: network is unreachable
Error pulling redis:7-alpine, retrying...
Error response from daemon: Get "https://registry-1.docker.io/v2/": dial tcp [2600:1f18:2148:bc02:445d:9ace:d20b:c303]:443: connect: network is unreachable
Error pulling redis:7-alpine, retrying...
Too many failed retries, exiting
The thing that jump out at me is the IPv6. My network has no IPv6 support. Typing ping6 ipv6.google.com will always result in no network found. I found this odd since I have updated many times previously…. So I waited a few hour and nothing changed, so I started troubleshooting.
First thought was to edit grub to disable IPv6. And docker would not start, even after removing the known docker network cards.
So I then edited the /etc/gai.conf to use ::ffff:0:0/96 100. And net.ipv6.conf.all.disable_ipv6 = 1. Docker seems to ignore theses completely.
So I turned to mail cow and edited the docker-compose.yml to ipv6=failse and commented out the subnet. This boots and as far as I can tell does nothing.
I added the override with “ipv6nat disabled in compose.override.yml” And get this error:
sudo docker compose up -d
[+] Running 1/1
✘ ipv6nat-mailcow Error 0.5s
Error response from daemon: Get "https://registry-1.docker.io/v2/library/bash/manifests/sha256:8e45c8ffe44db8784197f7c849a22292b446d76895f65646717b5a2152114d6e": dial tcp [2600:1f18:2148:bc00:8d61:9b62:40aa:8bb8]:443: connect: network is unreachable
Remove the override and boot again.
To look for taint I ran an update –gc. No change.
I have tried a couple house, and maybe 100% looking in wrong place, but that’s why I’m asking.
Thanks you for any help.
Ubuntu 22.04.4 LTS
Mailcow: Version: 2023-05a
Docker Compose version v2.10.2
Docker version 25.0.3, build 4debf41