ubuntu22.04安装docker engine
在Ubuntu 22.04上安装Docker Engine可以通过以下步骤完成:
-
更新系统包索引:
sudo apt update
-
安装必要的依赖包:
这些包允许apt通过HTTPS使用仓库。sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
-
添加Docker的官方GPG密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
-
设置Docker APT仓库:
将Docker的仓库添加到你的APT源列表中。echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
-
更新APT包索引:
sudo apt update
-
安装Docker Engine:
sudo apt install -y docker-ce docker-ce-cli containerd.io
-
启动并启用Docker服务:
sudo systemctl start docker sudo systemctl enable docker
-
验证Docker安装:
检查Docker版本以确认安装成功。docker --version
-
(可选)将当前用户添加到docker组:
这样你就可以不用sudo来运行Docker命令了。sudo usermod -aG docker $USER
-
注销并重新登录:
使新的组成员身份生效,你需要注销并重新登录。 -
拉取镜像:
sudo docker run hello-world
如果报错:
docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers). See 'docker run --help'.
可以使用以下方法解决:
修改配置文件 /etc/docker/daemon.json,修改后内容如下:
{"runtimes": {"nvidia": {"args": [],"path": "nvidia-container-runtime"}},"registry-mirrors": ["https://docker.registry.cyou","https://docker-cf.registry.cyou","https://dockercf.jsdelivr.fyi","https://docker.jsdelivr.fyi","https://dockertest.jsdelivr.fyi","https://mirror.aliyuncs.com","https://dockerproxy.com","https://mirror.baidubce.com","https://docker.m.daocloud.io","https://docker.nju.edu.cn","https://docker.mirrors.sjtug.sjtu.edu.cn","https://docker.mirrors.ustc.edu.cn","https://mirror.iscas.ac.cn","https://docker.rainbond.cc"]}
修改后配置文件,重启docker服务,命令如下:
sudo systemctl daemon-reload
sudo systemctl restart docker
12. docker常用操作
Docker提供了丰富的命令行工具来管理和操作容器、镜像、网络等资源。以下是一些常用的Docker操作命令:
拉取镜像:
sudo docker pull <image_name>
列出本地镜像:
sudo docker images
运行容器:
sudo docker run -it <image_name> /bin/bash
其中-it
选项用于交互式终端,/bin/bash
是容器启动后执行的命令。
列出正在运行的容器:
sudo docker ps
列出所有容器(包括停止的):
sudo docker ps -a
停止容器:
sudo docker stop <container_id>
启动已停止的容器:
sudo docker start <container_id>
删除容器:
sudo docker rm <container_id>
删除镜像:
sudo docker rmi <image_id>
进入正在运行的容器:
sudo docker exec -it <container_id> /bin/bash
退出正在运行的容器:
exit
查看容器日志:
sudo docker logs <container_id>
查看容器的详细信息:
sudo docker inspect <container_id>
构建镜像:
sudo docker build -t <image_name> .
其中`.`表示当前目录下的Dockerfile。
推送镜像到Docker Hub:
sudo docker push <image_name>
查看Docker系统信息:
sudo docker info
清理未使用的资源:
sudo docker system prune
这些命令涵盖了Docker日常使用中的大部分操作。根据具体需求,你可能还需要使用其他高级命令和选项。建议参考Docker官方文档以获取更多详细信息和示例。
完成以上步骤后,你应该已经在Ubuntu 22.04上成功安装并配置了Docker Engine。你可以开始使用Docker来运行容器和其他相关操作。