当前位置: 首页 > article >正文

docker入门总结(附错误处理,持续更新)

安装、启动、卸载

卸载掉旧版本的 Docker

yum remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine

Docker安装(选其一)

国内yum源仓库安装(适用于已有国内可访问的镜像仓库)

安装成功后拉取hub.docker.com的镜像会有以下报错

  • 原因:
    docker版本过低,导致与对应镜像版本不兼容导致的。docker推出了新的镜像构建工具,比较老版本的docker不能识别这种格式。即使设置了docker代理也没有作用。
  • 解决方法:
    用阿里云镜像源安装的docker版本是1.13.1,这个版本是2017年发布的,需要升级版本。你可以使用命令查看一下自己的docker版本,1.13.1版本太低,需要升级。
sudo docker -- version
  • 报错显示:
[root@CentOS7-Test ~]# docker run hello-world
Unable to find image 'hello-world:latest' locally
Trying to pull repository docker.io/library/hello-world ... 
/usr/bin/docker-current: missing signature key.
See '/usr/bin/docker-current run --help'.
# 1.安装依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2

# 2.Docker 软件包已经包括在默认的 CentOS-Extras 软件源里。因此想要安装 docker,只需要运行下面的 yum 命令
yum install docker

# 3.启动Docker-CE
systemctl start docker

# 4.检查是否安装成功,Client与Server均有输出
docker version
or
docker info

# 5.设置开机自启
systemctl enable docker

# 6.Docker的简单运用---Hello World(请使用自己的镜像仓库地址进行测试)
docker pull library/hello-world

# 7.卸载docker,可以使用下方命令
yum remove docker-ce # 执行卸载
rm -rf /var/lib/docker # 清除所有的文件目录
  • 第4步的结果输出:
    在这里插入图片描述

docker官方地址安装(适用于已代理,需要拉取hub.docker.com的镜像)

  1. 配置系统代理参考:
    https://blog.csdn.net/admin_233/article/details/142419709
  2. 安装新版官方docker
    注意:
    下方第3步可能需要多次执行,确保返回结果一直才代表成功。
    执行下方第7步之前需要确保机器或docker可以访问hub.docker.com,反之则需要配置docker代理(下方有教程)。
# 1.安装依赖包
sudo yum install -y yum-utils

# 2.添加稳定版本源
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 3.安装docker-ce docker-ce-cli containerd.io
sudo yum install -y docker-ce docker-ce-cli containerd.io
 
# 4.启动
sudo systemctl start docker
 
# 5.设置开启启动
sudo systemctl enable docker
 
# 6.验证docker版本
docker --version
or
docker version

# 7.Docker的简单运用---Hello World
docker pull library/hello-world

# 8.使用命令查看images
docker images

第3步正常返回结果:
在这里插入图片描述
第6步返回结果:
在这里插入图片描述

第7步返回结果:
在这里插入图片描述
第8步返回结果:
在这里插入图片描述

Docker pull国内无法拉取镜像解决办法(代理)

  1. 软件设置-参数设置-允许来自局域网的连接
    软件设置-参数设置-为局域网开启新的端口(可选)
    在这里插入图片描述

  2. 记录本机ip与端口号
    在这里插入图片描述

  3. 修改docker代理

# 1.创建目录
mkdir -p /etc/systemd/system/docker.service.d

# 2.创建文件,并写入内容
# 下方的地址为运行v2ray机器的IP地址:软件内显示的局域网端口号
vi /etc/systemd/system/docker.service.d/http-proxy.conf
[Service]
Environment="HTTP_PROXY=http://192.168.2.50:10811"
Environment="HTTPS_PROXY=http://192.168.2.50:10811"

# 3.重启服务
systemctl daemon-reload
systemctl restart docker

# 4.查看docker代理是否配置成功
docker info
  1. 显示出配置的代理即可代表配置成功
    在这里插入图片描述
  2. 成功后拉取镜像会在软件内显示相应日志
    在这里插入图片描述

http://www.kler.cn/a/314450.html

相关文章:

  • 欧国联的规则,你都了解吗?
  • 《云原生安全攻防》-- K8s安全防护思路
  • 大语言模型在序列推荐中的应用
  • 双十一云服务器抢购后,用SD-WAN连通多云网络
  • 【SpringBoot】18 上传文件到数据库(Thymeleaf + MySQL)
  • ssm093基于Java Web的毕业生就业状况管理系统设计与实现+jsp(论文+源码)_kaic
  • 如何使用 Python 的 sqlite3 模块操作 SQLite 数据库?
  • mac命令行分卷压缩与合并
  • 长列表加载性能优化
  • python画图1
  • springboot实战学习(6)(用户模块的登录认证)(初识令牌)(JWT)
  • python:给1个整数,你怎么判断是否等于2的幂次方?
  • java.nio.ByteBuffer的 capacity, limit, position, mark
  • 如何打造高效的远程开发团队:最佳实践与挑战
  • 大话C++:第11篇 类的定义与封装
  • Redis——redispluspls库通用命令以及String类型相关接口使用
  • 每日一题--打印闰年
  • 如何使用 Python 连接 MySQL 数据库?什么是 ORM(对象关系映射),如何使用
  • fasterRCNN模型实现飞机类目标检测
  • 果蔬识别系统架构+流程图
  • Hadoop的安装
  • JVM 调优篇7 调优案例2-元空间的优化解决
  • 使用Diskgenius系统迁移
  • 分页插件、代码生成器
  • C#中DataGridView 的 CellPainting 事件的e.Handled = true
  • 银河麒麟V10系统崩溃后的处理