Docker 环境配置以及问题解决方案
目录
- 环境准备
- Linux系统分为两种:
- 查看系统版本:
- 查看系统内核
- 查看系统配置
- 步骤
- 卸载docker
- 问题汇总
- docker 启动报错
- 常用命令
环境准备
我的服务器是 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 (mockbuild@kbuilder.bsys.centos.org) (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
您可能感兴趣的文章
- 01-12Docker部署rabbitmq遇到的两个问题
- 01-12最新虚拟机VMware 14安装教程
- 01-12使用docker compose安装harbor私有仓库的详细教程
- 01-12Windows下Docker安装各种软件的详细过程
- 01-12seata docker 高可用部署的详细介绍
- 01-12浅谈Tomcat多层容器的设计
- 01-12Gogs+Jenkins+Docker 自动化部署.NetCore的方法步骤
- 01-12解决vscode docker插件docker.socket权限问题
- 01-12Docker中运行PostgreSQL并推荐几款连接工具
- 01-12Docker核心原理之 Cgroup详解


阅读排行
推荐教程
- 12-07一文教你怎么选择Tomcat对应的JDK版本
- 12-23linux中ftp无法访问怎么办
- 12-11docker存储目录迁移示例教程
- 12-10docker start启动容器后仍然exit状态的解决
- 12-10Linux下如何安装Logstash
- 12-05Docker安装Jenkins全过程
- 01-05Shell脚本去重的几种方法实例
- 12-22kvm虚拟机配置NAT端口转发的实现方法
- 12-19Zabbix SAML SSO 登录绕过漏洞的操作流程
- 12-15Docker-Compose搭建Spark集群的实现方法




