因为停电,运行jumpserver docker 的虚拟机
[root@jumpserverdockerallinone ~]# docker run -d -v /opt/mysql:/var/lib/mysql -v /opt/jumpserver:/opt/jumpserver/data/media -p 80:80 -p 443:443 -p 2222:2222 -e SECRET_KEY=$SECRET_KEY -e BOOTSTRAP_TOKEN=$BOOTSTRAP_TOKEN -e DB_HOST=127.0.0.1 -e DB_PORT=3306 -e DB_USER=jumpserver -e DB_PASSWORD=Jmpasswd@2019 -e DB_NAME=jumpserver huangshumao/jms_all_guacamole-1.0.0:704
WARNING: IPv4 forwarding is disabled. Networking will not work.
bc235129f7d91c6d93c0385cfa16fd7ec78941792a1f64582c682b24ccad6e37
docker: Error response from daemon: driver failed programming external connectivity on endpoint laughing_torvalds (52cf561910c31c93844b6c85fe70a0198d52d56cc69455c934d1ae155c305bd5): (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 2222 -j DNAT --to-destination 172.17.0.2:2222 ! -i docker0: iptables: No chain/target/match by that name.
(exit status 1)).
在/etc/sysctl.conf添加行net.ipv4.ip_forward=1,然后sysctl -p
cat /etc/sysctl.conf
# sysctl settings are defined through files in
# /usr/lib/sysctl.d/, /run/sysctl.d/, and /etc/sysctl.d/.
#
# Vendors settings live in /usr/lib/sysctl.d/.
# To override a whole file, create a new file with the same in
# /etc/sysctl.d/ and put new settings there. To override
# only specific settings, add a file with a lexically later
# name in /etc/sysctl.d/ and put new settings there.
#
# For more information, see sysctl.conf(5) and sysctl.d(5).
net.ipv4.ip_forward=1
vm.overcommit_memory = 1
net.ipv6.conf.all.disable_ipv6=1
[root@jumpserverdockerallinone ~]# sysctl -p
net.ipv4.ip_forward = 1
vm.overcommit_memory = 1
net.ipv6.conf.all.disable_ipv6 = 1
重启network和docker服务
# systemctl restart network && systemctl restart docker
报IPTABLE出错
[root@jumpserverdockerallinone ~]# docker restart jms_guacamole_1 jms_guacamole_2 jms_guacamole_3
Error response from daemon: Cannot restart container jms_guacamole_1: driver failed programming external connectivity on endpoint jms_guacamole_1 (cece584505c9e93d7f018c445a81ef4c21de6942436578a900c6ceb33bcda0ca): (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 8082 -j DNAT --to-destination 172.17.0.2:8081 ! -i docker0: iptables: No chain/target/match by that name.
(exit status 1))
是因为我前面只重启network没有重启docker服务
---------------------
版权声明:本文为CSDN博主「运维自动化&云计算」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/h106140873/article/details/97111254