Docker | 超全的环境配置教程,以及问题解决

简介: Docker | 超全的环境配置教程,以及问题解决

环境准备


文档非常用心🌹

我的服务器是 centos 7 环境

如果CentOS系统内核低于3.10,可以升级软件包及内核,通过 yum update 升级

Linux系统分为两种:

  1. RedHat系列:Redhat、Centos、Fedora等
  2. Debian系列:Debian、Ubuntu等

RedHat系列的包管理工具是yum

Debian系列的包管理工具是apt-get

  1. 查看系统版本:
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

  1. 查看系统内核
uname -r // 查看系统内核
3.10.0-1062.1.2.el7.x86_64
  1. 查看系统配置
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"

image.png

文档传送门:docs.docker.com/engine/inst…


安装并运行一个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、配置阿里云镜像加速


登录阿里云,找到容器镜像服务,找到自己的镜像加速器

image.png

配置步骤如下👇

# 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

image.png


10、hello-world


1.直接运行run命令

docker run hello-worl

image.png

  1. run命令工作流程图解

image.png


11、查看下载的hello-world镜像


docker images

image.png


卸载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

image.png

  • 错误原因:

dockersocket配置出现了冲突,docker在运行时的启动入口文件为:/lib/systemd/system/docker.service,我们在配置镜像加速之后又添加了一个守护进程文件:/etc/docker/daemon.json,两个文件对host进行了配置,发生冲突。

  • 查看报错详情 journalctl -xe

image.png

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"
 ]

image.png


常用命令


  1. 查看版本 docker -v
  2. 设置服务器开机启动
systemctl enable docker
  1. 停止docker
systemctl stop docker
  1. systemctl 方式
# 守护进程重启
sudo systemctl daemon-reload
# 重启docker服务
sudo systemctl restart docker
# 关闭docker
sudo systemctl stop docker


目录
相关文章
|
2月前
|
机器人 网络安全 数据安全/隐私保护
autMan奥特曼机器人-对接Docker版本NTQQ详细教程
本文介绍了如何在服务器上搭建NTQQ机器人,通过官方NTQQ对接各框架,实现QQ登录的稳定运行。文章提到了需要准备一台服务器和相应的软件,并详细描述了通过SSH链接服务器、创建文件夹和配置文件、编辑配置文件地址端口、运行容器等步骤。同时,文章还介绍了VNC连接的使用和配置,以及使用watchtower进行NTQQ的更新。文章总结起来就是在服务器上搭建NTQQ机器人,实现QQ登录的稳定性和自动登录功能,同时提供了更新和维护的方法。
72 3
autMan奥特曼机器人-对接Docker版本NTQQ详细教程
|
2月前
|
Linux Docker 容器
Centos安装docker(linux安装docker)——超详细小白可操作手把手教程,包好用!!!
本篇博客重在讲解Centos安装docker,经博主多次在不同服务器上测试,极其的稳定,尤其是阿里的服务器,一路复制命令畅通无阻。
1017 4
Centos安装docker(linux安装docker)——超详细小白可操作手把手教程,包好用!!!
|
2月前
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
294 3
|
2月前
|
数据可视化 数据挖掘 Docker
Docker Desktop 安装 ClickHouse 超级简单教程
Docker Desktop 安装 ClickHouse 超级简单教程
56 1
|
2月前
|
定位技术 文件存储 网络架构
Docker部署PhotoPrism、Immich图片管理应用,无需公网IP远程访问教程
除了Synology、QNAP、TerraMaster等品牌的NAS设备内置图库功能,市面上还有多种备受欢迎的第三方应用,如PhotoPrism、Immich、LibrePhotos、Piwigo、Photoview等。这些应用不仅提供强大的图片管理能力,还可通过Docker轻松部署。借助贝锐花生壳服务,即使没有公网IP也能实现远程访问,突破地理限制,提升数据可访问性和安全性,让用户随时随地管理私人图库。
142 1
|
2月前
|
存储 应用服务中间件 nginx
|
2月前
|
Linux 开发工具 Docker
各个类linux服务器安装docker教程
各个类linux服务器安装docker教程
64 0
|
3月前
|
Cloud Native 持续交付 Docker
云原生技术实践:Docker容器化部署教程
【9月更文挑战第4天】本文将引导你了解如何利用Docker这一云原生技术的核心工具,实现应用的容器化部署。文章不仅提供了详细的步骤和代码示例,还深入探讨了云原生技术背后的哲学,帮助你理解为何容器化在现代软件开发中变得如此重要,并指导你如何在实际操作中运用这些知识。
|
4月前
|
网络协议 Unix Shell
Docker基本教程
这篇文章是关于Docker的入门教程,介绍了Docker的基本命令和操作,包括镜像搜索、拉取、列出、删除,容器的运行、进入、退出、查看状态、停止、重启和删除,以及权限问题的解决方法。
81 2