Hello,
I have a problem with docker build not beeing able to connect to the internet. For exampel I have this dockerfile:
# Use an official Python runtime as a base image
FROM python:3.9-slim
# Set the working directory
WORKDIR /app
# Copy the requirements and application files
COPY requirements.txt .
COPY app.py .
# Install dependencies
RUN pip install --no-cache-dir -r requirements.txt
# Expose the port Flask runs on
EXPOSE 5000
# Define the command to run the application
CMD ["python", "app.py"]
When trying to build this image, installing the requirements fails with an error:
% docker build .
[+] Building 86.6s (9/9) FINISHED docker:default
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 426B 0.0s
=> [internal] load metadata for docker.io/library/python:3.9-slim 1.9s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> [1/5] FROM docker.io/library/python:3.9-slim@sha256:a0ba1303f0593d819f74af19ec08c82a5d3be255beb85c148b9807f10463c86c 3.0s
=> => resolve docker.io/library/python:3.9-slim@sha256:a0ba1303f0593d819f74af19ec08c82a5d3be255beb85c148b9807f10463c86c 0.0s
=> => sha256:28f178de310bc01fac2b8f9b87541563f1a77527ff6c14ee6aae0954864556ec 3.32MB / 3.32MB 0.7s
=> => sha256:0f0630bc558f158662d2f804360f24f584b79c9b7bff342b14be6f5945c300d8 14.93MB / 14.93MB 1.9s
=> => sha256:faa04e2c73d5969c08650d34ef8b62680ee75ddf3cef21fe3c65afb938f06f9f 250B / 250B 0.2s
=> => sha256:a0ba1303f0593d819f74af19ec08c82a5d3be255beb85c148b9807f10463c86c 10.41kB / 10.41kB 0.0s
=> => sha256:db96716a96803e7cbe2316ebd6d1c002aa5573c56b556d8f4bec1a74adee1aba 1.75kB / 1.75kB 0.0s
=> => sha256:2944fd9724ebbf828b092fac4f21a77d3a64765e80c0c4bee2094d1e8726bdbb 5.28kB / 5.28kB 0.0s
=> => extracting sha256:28f178de310bc01fac2b8f9b87541563f1a77527ff6c14ee6aae0954864556ec 0.2s
=> => extracting sha256:0f0630bc558f158662d2f804360f24f584b79c9b7bff342b14be6f5945c300d8 0.8s
=> => extracting sha256:faa04e2c73d5969c08650d34ef8b62680ee75ddf3cef21fe3c65afb938f06f9f 0.0s
=> [internal] load build context 0.0s
=> => transferring context: 418B 0.0s
=> [2/5] WORKDIR /app 0.4s
=> [3/5] COPY requirements.txt . 0.0s
=> [4/5] COPY app.py . 0.0s
=> ERROR [5/5] RUN pip install --no-cache-dir -r requirements.txt 81.1s
------
> [5/5] RUN pip install --no-cache-dir -r requirements.txt:
13.26 WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f4e017250a0>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /simple/flask/
23.78 WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f4e00e18e50>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /simple/flask/
34.79 WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f4e00e18880>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /simple/flask/
46.80 WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f4e00e188b0>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /simple/flask/
60.82 WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f4e00ef35e0>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /simple/flask/
70.84 ERROR: Could not find a version that satisfies the requirement flask (from versions: none)
70.84 ERROR: No matching distribution found for flask
------
Dockerfile:12
--------------------
10 |
11 | # Install dependencies
12 | >>> RUN pip install --no-cache-dir -r requirements.txt
13 |
14 | # Expose the port Flask runs on
--------------------
ERROR: failed to solve: process "/bin/sh -c pip install --no-cache-dir -r requirements.txt" did not complete successfully: exit code: 1
I currently have problems where containers in a docker compose setup couldn’t reach each other. Restarting the computer or iptables -t nat -F
solved the problem temporarely, but after restarting the docker compose setup it came back. No I can’t even build docker containers without setting the network to host.
This is my docker network:
% docker network inspect bridge
[
{
"Name": "bridge",
"Id": "a5be17fb867c037afdab09e0cd0326d4868385dd9dc5fc243fd7d0bb9ce6556c",
"Created": "2024-12-03T07:53:40.207553606+01:00",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": null,
"Config": [
{
"Subnet": "172.17.0.0/16",
"Gateway": "172.17.0.1"
}
]
},
"Internal": false,
"Attachable": false,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {},
"Options": {
"com.docker.network.bridge.default_bridge": "true",
"com.docker.network.bridge.enable_icc": "true",
"com.docker.network.bridge.enable_ip_masquerade": "true",
"com.docker.network.bridge.host_binding_ipv4": "0.0.0.0",
"com.docker.network.bridge.name": "docker0",
"com.docker.network.driver.mtu": "1500"
},
"Labels": {}
}
]
iptables rules:
% sudo iptables -L
[sudo] Passwort für root:
Chain INPUT (policy ACCEPT)
target prot opt source destination
LIBVIRT_INP all -- anywhere anywhere
Chain FORWARD (policy DROP)
target prot opt source destination
DOCKER-USER all -- anywhere anywhere
DOCKER-ISOLATION-STAGE-1 all -- anywhere anywhere
ACCEPT all -- anywhere anywhere ctstate RELATED,ESTABLISHED
DOCKER all -- anywhere anywhere
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere
LIBVIRT_FWX all -- anywhere anywhere
LIBVIRT_FWI all -- anywhere anywhere
LIBVIRT_FWO all -- anywhere anywhere
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
LIBVIRT_OUT all -- anywhere anywhere
Chain DOCKER (1 references)
target prot opt source destination
ACCEPT tcp -- anywhere 172.21.0.3 tcp dpt:http-alt
Chain DOCKER-ISOLATION-STAGE-1 (1 references)
target prot opt source destination
DOCKER-ISOLATION-STAGE-2 all -- anywhere anywhere
RETURN all -- anywhere anywhere
Chain DOCKER-ISOLATION-STAGE-2 (1 references)
target prot opt source destination
DROP all -- anywhere anywhere
RETURN all -- anywhere anywhere
Chain DOCKER-USER (1 references)
target prot opt source destination
RETURN all -- anywhere anywhere
Chain LIBVIRT_FWI (1 references)
target prot opt source destination
ACCEPT all -- anywhere 192.168.122.0/24 ctstate RELATED,ESTABLISHED
REJECT all -- anywhere anywhere reject-with icmp-port-unreachable
Chain LIBVIRT_FWO (1 references)
target prot opt source destination
ACCEPT all -- 192.168.122.0/24 anywhere
REJECT all -- anywhere anywhere reject-with icmp-port-unreachable
Chain LIBVIRT_FWX (1 references)
target prot opt source destination
ACCEPT all -- anywhere anywhere
Chain LIBVIRT_INP (1 references)
target prot opt source destination
ACCEPT udp -- anywhere anywhere udp dpt:domain
ACCEPT tcp -- anywhere anywhere tcp dpt:domain
ACCEPT udp -- anywhere anywhere udp dpt:bootps
ACCEPT tcp -- anywhere anywhere tcp dpt:bootps
Chain LIBVIRT_OUT (1 references)
target prot opt source destination
ACCEPT udp -- anywhere anywhere udp dpt:domain
ACCEPT tcp -- anywhere anywhere tcp dpt:domain
ACCEPT udp -- anywhere anywhere udp dpt:bootpc
ACCEPT tcp -- anywhere anywhere tcp dpt:bootpc
and my network devices:
% ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
2: enp2s0f0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
link/ether 84:a9:38:32:72:40 brd ff:ff:ff:ff:ff:ff
3: enp5s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
link/ether 84:a9:38:32:72:3f brd ff:ff:ff:ff:ff:ff
4: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether f8:89:d2:f2:2e:df brd ff:ff:ff:ff:ff:ff
inet 192.168.8.194/24 brd 192.168.8.255 scope global dynamic noprefixroute wlp3s0
valid_lft 73402sec preferred_lft 73402sec
inet6 2a01:599:b43:d634:c2ff:388f:f94d:2/128 scope global dynamic noprefixroute
valid_lft 6962sec preferred_lft 3362sec
inet6 2a01:599:b43:d634:8c08:6045:60cf:b135/64 scope global temporary dynamic
valid_lft 7080sec preferred_lft 3480sec
inet6 2a01:599:b43:d634:ebc4:c78b:77ea:7980/64 scope global dynamic mngtmpaddr noprefixroute
valid_lft 7080sec preferred_lft 3480sec
inet6 fdc2:ff38:8ff9:4d00:576a:7e78:e75c:6f08/64 scope global temporary dynamic
valid_lft 7080sec preferred_lft 3480sec
inet6 fdc2:ff38:8ff9:4d00:ee64:60e6:b943:6943/64 scope global dynamic mngtmpaddr noprefixroute
valid_lft 7080sec preferred_lft 3480sec
inet6 fe80::d420:d41d:5cef:999e/64 scope link noprefixroute
valid_lft forever preferred_lft forever
5: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
link/ether 02:42:9a:84:3e:54 brd ff:ff:ff:ff:ff:ff
inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
valid_lft forever preferred_lft forever
inet6 fe80::42:9aff:fe84:3e54/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
106: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 52:54:00:b9:4b:ba brd ff:ff:ff:ff:ff:ff
inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
valid_lft forever preferred_lft forever
111: br-99945d5fb90e: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 02:42:60:6e:42:f5 brd ff:ff:ff:ff:ff:ff
inet 172.20.0.1/16 brd 172.20.255.255 scope global br-99945d5fb90e
valid_lft forever preferred_lft forever
inet6 fe80::42:60ff:fe6e:42f5/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
112: br-7a0565b6779b: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 02:42:01:22:4e:0a brd ff:ff:ff:ff:ff:ff
inet 172.21.0.1/16 brd 172.21.255.255 scope global br-7a0565b6779b
valid_lft forever preferred_lft forever
inet6 fe80::42:1ff:fe22:4e0a/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
146: veth7a815b9@if145: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-99945d5fb90e state UP group default
link/ether 9a:b5:24:78:eb:74 brd ff:ff:ff:ff:ff:ff link-netnsid 2
inet6 fe80::98b5:24ff:fe78:eb74/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
148: vethd7ebcb6@if147: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-7a0565b6779b state UP group default
link/ether 4e:84:9f:61:a1:22 brd ff:ff:ff:ff:ff:ff link-netnsid 1
inet6 fe80::4c84:9fff:fe61:a122/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
150: vethdd26c50@if149: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-7a0565b6779b state UP group default
link/ether e6:c1:6f:30:53:d0 brd ff:ff:ff:ff:ff:ff link-netnsid 3
inet6 fe80::e4c1:6fff:fe30:53d0/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
152: veth2a0f798@if151: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-99945d5fb90e state UP group default
link/ether c6:e8:17:24:76:f0 brd ff:ff:ff:ff:ff:ff link-netnsid 4
inet6 fe80::c4e8:17ff:fe24:76f0/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
154: veth1e2cbf6@if153: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-7a0565b6779b state UP group default
link/ether 6a:3a:fb:c4:b7:32 brd ff:ff:ff:ff:ff:ff link-netnsid 2
inet6 fe80::683a:fbff:fec4:b732/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
156: vethe74de44@if155: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-99945d5fb90e state UP group default
link/ether 12:ce:b6:59:e6:f9 brd ff:ff:ff:ff:ff:ff link-netnsid 6
inet6 fe80::10ce:b6ff:fe59:e6f9/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
158: veth22551e4@if157: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-7a0565b6779b state UP group default
link/ether 9a:d2:fc:09:fe:6d brd ff:ff:ff:ff:ff:ff link-netnsid 4
inet6 fe80::98d2:fcff:fe09:fe6d/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
160: veth104926b@if159: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-99945d5fb90e state UP group default
link/ether d6:5a:da:82:9a:83 brd ff:ff:ff:ff:ff:ff link-netnsid 8
inet6 fe80::d45a:daff:fe82:9a83/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
162: veth3bf003d@if161: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-7a0565b6779b state UP group default
link/ether 7a:14:a5:23:02:e9 brd ff:ff:ff:ff:ff:ff link-netnsid 8
inet6 fe80::7814:a5ff:fe23:2e9/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
164: veth0c186ce@if163: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-99945d5fb90e state UP group default
link/ether 9e:08:b4:a1:ac:9d brd ff:ff:ff:ff:ff:ff link-netnsid 9
inet6 fe80::9c08:b4ff:fea1:ac9d/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
166: veth64a4f1c@if165: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-7a0565b6779b state UP group default
link/ether 12:f4:1a:15:9b:82 brd ff:ff:ff:ff:ff:ff link-netnsid 9
inet6 fe80::10f4:1aff:fe15:9b82/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
168: veth1a70d02@if167: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-7a0565b6779b state UP group default
link/ether ce:d4:d0:2e:1f:5a brd ff:ff:ff:ff:ff:ff link-netnsid 10
inet6 fe80::ccd4:d0ff:fe2e:1f5a/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
170: vethe588d70@if169: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-99945d5fb90e state UP group default
link/ether 22:43:23:f6:1f:82 brd ff:ff:ff:ff:ff:ff link-netnsid 10
inet6 fe80::2043:23ff:fef6:1f82/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
172: veth93cdf8e@if171: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-7a0565b6779b state UP group default
link/ether f2:76:39:82:05:93 brd ff:ff:ff:ff:ff:ff link-netnsid 11
inet6 fe80::f076:39ff:fe82:593/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
174: vethf4bff53@if173: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-99945d5fb90e state UP group default
link/ether a2:81:10:a2:e2:f2 brd ff:ff:ff:ff:ff:ff link-netnsid 11
inet6 fe80::a081:10ff:fea2:e2f2/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
175: vnet2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master virbr0 state UNKNOWN group default qlen 1000
link/ether fe:54:00:ab:17:39 brd ff:ff:ff:ff:ff:ff
inet6 fe80::fc54:ff:feab:1739/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
I am using opensuse tumbleweed:
NAME="openSUSE Tumbleweed"
# VERSION="20241129"
ID="opensuse-tumbleweed"
ID_LIKE="opensuse suse"
VERSION_ID="20241129"
PRETTY_NAME="openSUSE Tumbleweed"
ANSI_COLOR="0;32"
# CPE 2.3 format, boo#1217921
CPE_NAME="cpe:2.3:o:opensuse:tumbleweed:20241129:*:*:*:*:*:*:*"
#CPE 2.2 format
#CPE_NAME="cpe:/o:opensuse:tumbleweed:20241129"
BUG_REPORT_URL="https://bugzilla.opensuse.org"
SUPPORT_URL="https://bugs.opensuse.org"
HOME_URL="https://www.opensuse.org"
DOCUMENTATION_URL="https://en.opensuse.org/Portal:Tumbleweed"
LOGO="distributor-logo-Tumbleweed"
Building the container in a vm with a fresh install of tumbleweed works. I hope you can help me to solve this issue.