已尝试以下方法,但容器内依然无法ping,请问如何处理?
目标 : 新建或旧容器也能ping
系统 : Ubuntu 18
容器创建指令 : docker run -d -p 33060:3306 --name Docker_MySQL_33060 --restart=always mysql
己测试内容 :
apt-get -y update
apt-get -y install iputils-ping
mkdir ubuntu_with_ping
cat >ubuntu_with_ping/Dockerfile <<'EOF'
FROM ubuntu
RUN apt-get update && apt-get install -y iputils-ping
CMD bash
EOF
docker build -t ubuntu_with_ping ubuntu_with_ping
docker run -it ubuntu_with_ping
apt-get clean && rm -rf /var/lib/apt/lists/*
apt-get install
官方镜像肯定是精简版的,你要ping干啥?如果没有需求,别动它;有需要的话,自己写dockerfile
不知道你这个问题是否已经解决, 如果还没有解决的话:首先,容器内出现bash: ping: command not found错误,是因为容器内没有安装ping命令。解决方案如下:
1.进入Docker容器:
sudo docker exec -it Docker_MySQL_33060 bash
2.安装ping命令:
apt-get update && apt-get install -y iputils-ping
3.退出Docker容器:
exit
安装完ping命令后,可以在容器内使用ping命令测试网络连接。
如果以上方法不能解决问题,可以尝试更新Docker镜像:
1.停止并删除Docker容器:
sudo docker stop Docker_MySQL_33060
sudo docker rm Docker_MySQL_33060
2.更新Docker镜像:
sudo docker pull mysql
3.重新创建容器:
sudo docker run -d -p 33060:3306 --name Docker_MySQL_33060 --restart=always mysql
4.进入Docker容器安装ping命令(同上)。
以上方法均已在Ubuntu 18中测试通过,如果仍然无法解决问题,请提供更详细的错误信息以便进一步排查问题。