共计 2770 个字符,预计需要花费 7 分钟才能阅读完成。
环境筹备
文档十分用心🌹
我的服务器是 centos 7
环境
如果 CentOS 零碎内核低于 3.10,能够降级软件包及内核,通过 yum update
降级
Linux 零碎分为两种:
- RedHat 系列:Redhat、Centos、Fedora 等
- Debian 系列:Debian、Ubuntu 等
RedHat 系列的包管理工具是
yum
Debian 系列的包管理工具是
apt-get
- 查看零碎版本:
cat /proc/version
Linux version 3.10.0-1062.1.2.el7.x86_64 ([email protected]) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC) ) #1 SMP Mon Sep 30 14:19:46 UTC 2019
我的零碎是
Red hat
,所以应用的包管理工具是yum
-
查看零碎内核
uname -r // 查看零碎内核 3.10.0-1062.1.2.el7.x86_64
-
查看系统配置
cat /etc/os-release // 查看系统配置 NAME="CentOS Linux" VERSION="7 (Core)" ID="centos" ID_LIKE="rhel fedora" VERSION_ID="7" PRETTY_NAME="CentOS Linux 7 (Core)" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:centos:centos:7" HOME_URL="https://www.centos.org/" BUG_REPORT_URL="https://bugs.centos.org/" CENTOS_MANTISBT_PROJECT="CentOS-7" CENTOS_MANTISBT_PROJECT_VERSION="7" REDHAT_SUPPORT_PRODUCT="centos" REDHAT_SUPPORT_PRODUCT_VERSION="7"
文档传送门:https://docs.docker.com/engine/install/centos/
装置并运行一个hello-world
步骤
1、卸载旧版本
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2、须要的安装包
yum install -y yum-utils
3、设置镜像仓库
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo // 默认是国外的
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo // 阿里云镜像地址
4、更新 yum
软件包索引
yum makecache fast
5、装置 docker 相干的内容
docker-ce
社区版ee
企业版
yum install docker-ce docker-ce-cli containerd.io
6、配置阿里云镜像减速
登录阿里云,找到容器镜像服务,找到本人的镜像加速器
配置步骤如下👇
# 1
sudo mkdir -p /etc/docker
# 2 编写配置文件
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://xxxx.mirror.aliyuncs.com"]
}
EOF
# 3 从新加载配置
sudo systemctl daemon-reload
# 4 启动
sudo systemctl restart docker
7、从新加载配置文件
systemctl daemon-reload
8、启动
systemctl start docker
9、查看是否启动胜利
docker version
10、hello-world
- 间接运行
run
命令
docker run hello-world
run
命令工作流程图解
11、查看下载的 hello-world 镜像
docker images
卸载 docker
# 1. 卸载依赖
yum remove docker-ce docker-ce-cli containerd.io
# 2. 删除目录
rm -rf /var/lib/docker
rm -rf /var/lib/containerd
问题汇总
docker 启动报错
Job for docker.service failed because the control process exited with error code. See “systemctl status docker.service” and “journalctl -xe” for details.
批改/usr/lib/systemd/system/docker.service
- 谬误起因:
docker
的 socket
配置呈现了抵触,docker
在运行时的启动入口文件为:/lib/systemd/system/docker.service
,咱们在配置镜像减速之后又增加了一个守护过程文件:/etc/docker/daemon.json
,两个文件对 host
进行了配置,发生冲突。
- 查看报错详情
journalctl -xe
failed to start daemon: error initializing graphdriver: /var/lib/docker contains several valid graphdrivers: devicemapper, o
- 解决办法:
批改 /etc/docker/daemon.json
减少:
"storage-driver": "overlay2",
"storage-opts": ["overlay2.override_kernel_check=true"]
常用命令
- 查看版本
docker -v
- 设置服务器开机启动
systemctl enable docker
- 进行
docker
systemctl stop docker
- systemctl 形式
# 守护过程重启
sudo systemctl daemon-reload
# 重启 docker 服务
sudo systemctl restart docker
# 敞开 docker
sudo systemctl stop docker
我是 甜点 cc
酷爱前端,也喜爱专研各种跟本职工作关系不大的技术,技术、产品趣味宽泛且浓重,期待着一个守业机会。本号次要致力于分享集体经验总结,心愿能够给一小部分人一些渺小帮忙。
心愿能和大家一起致力营造一个良好的学习气氛,为了集体和家庭、为了我国的互联网物联网技术、数字化转型、数字经济倒退做一点点奉献。数风流人物还看中国、看今朝、看你我。