关于docker的使用及报错处理

docker三要素

仓库,镜像,容器
仓库 – 存放镜像的地方
镜像 – 相当于类/模板
容器 – 镜像的实例,可以把容器看作一个简易的Linux环境

docker logo含义

蓝色的大海 – 宿主机系统 (centos7)
鲸鱼 – docker
鲸鱼背上的集装箱 – 容器实例

关于yum install 报错

yum install 报错[Errno 14] curl#37 - Couldn’t open file /mnt/repodata/repomd.xml
你好! 这是你第一次使用 **Markdown编辑器** 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。
1、然后按照网上的一些修改,先是执行:

yum clean all

然后 yum makecache,问题还是没解决,继续报错。

其实这两条命令就是清空缓存,然后再重新缓存的意思,有时候可能有效。

2、然后又尝试了方法,说是DNS的问题,上不了网。又去改了DNS(可以去尝试尝试,因为不同人遇到问题不一样)。

如果是绑定了静态地址,直接修改/etc/resolv.conf 这个文件下的DNS是没有用的,因为你执行命令service network restart 会恢复。所以要修改网卡的配置文件,先到对应的目录下:

cd /etc/sysconfig/network-scripts/

ll 查看网卡,因为有可能有几块网卡。

service network restart 重启网络,用cat /etc/resolv.conf 发现DNS改变了。

第二种情况是针对网络DNS出问题的时候的解决办法,如果之前本身就没有问题,说明这样是解决不了的。

3、因为yum 寻包的顺序应该先是本地源,再寻网络源。

所以需要修改配置文件,解决办法就是把本地源关闭:

#vi /etc/yum.repos.d/CentOS-Media.repo,将里面的enabled=1改成enabled=0,然后保存退出。

完了之后执行 yum makecache,如果能缓存,说明解决了,如果像我一样出现如下错误。说明yum源出了问题。
在这里插入图片描述
后来发现自己的文件夹少了CentOS-Base.repo这个源,可能是装系统的人备份成了CentOS-Base.repo.bb忘了改回来。

直接cp Centos-Base.repo.bak Centos-Base.repo

成功解决!!!

宿主机centos7关机再次启动运行docker images 时报错Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

解决方法

[root@es1 ~]# systemctl daemon-reload
[root@es1 ~]# sudo service docker restart
Redirecting to /bin/systemctl restart docker.service
[root@es1 ~]# sudo docker run hello-world

在centos7安装docker的时候,由于docker官方镜像一直安装失败

在这里插入图片描述这时由于在国内访问国外源官方镜像失败的缘故,修改为阿里云的源,然后下载镜像的速度就嗖嗖嗖。。。

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

然后在执行下载操作即可

sudo yum install docker-ce docker-ce-cli containerd.io

基于centos7的docker安装

设置存储库
安装yum-utils软件包(提供yum-config-manager 实用程序)并设置稳定的存储库。

$ sudo yum install -y yum-utils

$ sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

可选:启用每晚或测试存储库。

这些存储库包含在docker.repo上面的文件中,但默认情况下处于禁用状态。您可以在稳定存储库旁边启用它们。以下命令启用每晚存储库。

$ sudo yum-config-manager --enable docker-ce-nightly

要启用测试通道,请运行以下命令:

$ sudo yum-config-manager --enable docker-ce-test

您可以通过运行带有标志的命令来禁用夜间或测试存储库 。要重新启用它,请使用该标志。以下命令禁用夜间存储库。yum-config-manager–disable–enable

$ sudo yum-config-manager --disable docker-ce-nightly

安装DOCKER引擎
安装最新版本的Docker Engine和容器,或者转到下一步安装特定版本:

$ sudo yum install docker-ce docker-ce-cli containerd.io

启动Docker。

$ sudo systemctl start docker

通过运行hello-world 映像来验证是否正确安装了Docker Engine 。

$ sudo docker run hello-world

在这里插入图片描述

Docker_阿里云镜像加速器配置

1.获得加速器地址连接
阿里云hub地址:https://dev.aliyun.com/search.html(可复用淘宝账号登录)
在这里插入图片描述
2.配置本机Docker运行镜像加速器

鉴于国内网络问题,后续拉取 Docker 镜像十分缓慢,我们可以需要配置加速器来解决,

执行以下命令修改相应的配置:

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://xxx.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

Docker_helloworld镜像

$ sudo docker run hello-world

run干了什么?
在这里插入图片描述

Docker_运行底层原理

Docker是一个c/s结构系统,Docker守护进程运行在主机上,通过socket连接从客户端访问,守护进程从客户端接收命令并管理运行在主机上的容器,容器是一个运行时环境,相当于集装箱
在这里插入图片描述
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200611223632145.png
docker有着比虚拟机更少的抽象层。由于docker不需要Hypervisor实现硬件资源虚拟化,运行在docker容器上的程序直接使用的都是实际物理机的硬件资源。因此在CPU、内存利用率上docker将会在效率上有明显优势。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值