Skip to content

Commit a81fc16

Browse files
Apply Docker iptables workaround
1 parent 4105f05 commit a81fc16

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

.github/workflows/build-snap.yml

+36
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,24 @@ jobs:
1818
sudo lxd init --auto
1919
sudo usermod --append --groups lxd $USER
2020
sg lxd -c 'lxc version'
21+
# Docker sets iptables rules that interfere with LXD.
22+
# https://documentation.ubuntu.com/lxd/en/latest/howto/network_bridge_firewalld/#prevent-connectivity-issues-with-lxd-and-docker
23+
- name: Apply Docker iptables workaround
24+
shell: bash
25+
run: |
26+
set -x
27+
ip a
28+
ip r
29+
30+
bridges=('lxdbr0' 'dualstack-br0' 'ipv6-br0')
31+
for i in ${bridges[@]}; do
32+
set +e
33+
sudo iptables -I DOCKER-USER -i $i -j ACCEPT
34+
sudo ip6tables -I DOCKER-USER -i $i -j ACCEPT
35+
sudo iptables -I DOCKER-USER -o $i -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
36+
sudo ip6tables -I DOCKER-USER -o $i -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
37+
set -e
38+
done
2139
- name: Install snapcraft
2240
run: |
2341
sudo snap install snapcraft --classic
@@ -197,6 +215,24 @@ jobs:
197215
sudo lxc network set lxdbr0 ipv6.address=none
198216
sudo usermod --append --groups lxd $USER
199217
sg lxd -c 'lxc version'
218+
# Docker sets iptables rules that interfere with LXD.
219+
# https://documentation.ubuntu.com/lxd/en/latest/howto/network_bridge_firewalld/#prevent-connectivity-issues-with-lxd-and-docker
220+
- name: Apply Docker iptables workaround
221+
shell: bash
222+
run: |
223+
set -x
224+
ip a
225+
ip r
226+
227+
bridges=('lxdbr0' 'dualstack-br0' 'ipv6-br0')
228+
for i in ${bridges[@]}; do
229+
set +e
230+
sudo iptables -I DOCKER-USER -i $i -j ACCEPT
231+
sudo ip6tables -I DOCKER-USER -i $i -j ACCEPT
232+
sudo iptables -I DOCKER-USER -o $i -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
233+
sudo ip6tables -I DOCKER-USER -o $i -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
234+
set -e
235+
done
200236
- name: Run airgap tests
201237
run: |
202238
sudo -E bash -x -c "./tests/libs/airgap.sh --distro ubuntu:22.04 --channel $PWD/build/microk8s.snap"

0 commit comments

Comments
 (0)