你可以按照以下步骤进行操作:
sudo apt-get remove docker docker-engine docker.io containerd runc
sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
验证docker是否安装成功,运行一个测试容器:
sudo docker run hello-world
如果你看到类似下面的输出,说明docker已经成功安装并运行:
Hello from Docker!
This message shows that your installation appears to be working correctly.
…
为了提高docker镜像的下载速度,你可以配置国内加速器。不同的云服务商提供了不同的加速器地址,你可以根据自己的需要选择一个。
例如,阿里云提供了 https://
百度云提供了 https://mirror.baidubce.com 。
网易云提供了 https://hub-mirror.c.163.com 等等。
为了配置国内加速器,你需要在 /etc/docker/daemon.json 文件中添加 registry-mirrors 键值对,如果文件不存在,请新建一个。例如,如果你想使用阿里云和百度云的加速器,你可以在文件中写入如下内容:
{
“registry-mirrors”: [
“https://h7scnygj.mirror.aliyuncs.com”,
“https://mirror.baidubce.com”
]
}
复制
保存文件后,重新启动docker服务:
sudo systemctl daemon-reload
sudo systemctl restart docker
service docker restart
复制
检查加速器是否生效,运行以下命令:
docker info
win11 安装Ubuntu 222.04LST 。WSL2-Debian启动docker报错(failed to start daemon: Error initializing network controller: error obtaining…)
问题描述
Tips:sudo service docker start 启动日志在/var/log/docaker.log。
$ cat /var/log/docker.log
...
Sep 13 20:47:37 xxx dockerd: failed to start daemon: Error initializing network controller: error
obtaining controller instance: failed to create NAT chain DOCKER: iptables failed: iptables -t nat -N D
OCKER: iptables v1.4.21: can't initialize iptables table `nat': Table does not exist (do you need to ins
mod?)
解决方案:
首先,将iptables用iptables-legacy替换:
sudo update-alternatives --set iptables /usr/sbin/iptables-legacy
开启 ipv4 的包转发功能:
sudo sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g' /etc/sysctl.conf`
退出重新启动ubuntu 22.04 LST即可。