02-Docker安装 CentOS安装Docker

简介: 本文详细介绍在CentOS和Ubuntu系统上安装、配置及卸载Docker的完整步骤,包括配置阿里云镜像加速、离线安装方法、设置开机自启与命令补全,助你快速部署并测试Docker环境。

CentOS安装Docker


参考官网:https://docs.docker.com/engine/install/centos/


卸载旧版本


如果之前安装过Docker,需要先卸载旧版本:


sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine


旧版本的Docker引擎包可能叫做:dockerdocker-engine


新版本的Docker引擎包叫做:docker-ce


配置yum资源库


安装yum-config-manager


# yum-util提供yum-config-manager功能 
sudo yum install -y yum-utils


配置docker的资源库地址:


官方地址:(比较慢,不推荐)


# 在yum资源库中添加docker资源库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo


阿里云镜像地址:


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


阿里云官网提供了很多资源镜像,镜像地址:https://mirrors.aliyun.com,进入之后可以选择自己需要的资源进行配置


创建缓存(可选):


yum makecache fast


安装Docker引擎


安装最新版本的Docker引擎、Docker客户端:


# docker-ce是Docker引擎,docker-ce-cli是客户端
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin


此时,默认安装的docker引擎、客户端都是最新版本。


如果要安装指定版本:


# 查询版本列表
yum list docker-ce --showduplicates | sort -r
# 指定版本安装17.09.0.ce版
# sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io docker-compose-plugin
sudo yum install docker-ce-17.09.0.ce docker-ce-cli-17.09.0.ce containerd.io docker-compose-plugin


启动docker引擎


如果没有启动Docker引擎,那么执行 docker version查看版本号时,只能看到 Client: Docker Engine(Docker引擎客户端)的版本号。


启动Docker引擎:


# 新版本的Docker就是一个系统服务,可以直接使用启动系统服务方式启动
systemctl start docker
# 此时查看docker版本,可以看到Server: Docker Engine(Docker引擎)版本号
docker version


卸载Docker


卸载Docker步骤:


  1. 关闭服务
systemctl stop docker


  1. 使用yum删除docker引擎
sudo yum remove docker-ce docker-ce-cli containerd.io


  1. 删除镜像、容器、卷、自定义配置等文件
sudo rm -rf /var/lib/docker
 sudo rm -rf /var/lib/containerd



运行HelloWorld测试


运行HelloWorld:


docker run hello-world

Ubuntu安装Docker

卸载旧版本

卸载旧版本Docker(如果已经安装):

sudo apt-get remove docker docker-engine docker.io containerd runc

安装依赖

安装必要的依赖:

sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release

添加docker软件源

官网源:(不推荐,可能会连不上报错)

# 导入源仓库的 GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
# 将 Docker APT 软件源添加到你的系统
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"


阿里云源(推荐):

# 添加Docker GPG密钥
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# 添加Docker软件源信息
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null


安装docker

更新软件源并安装Docker:

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io


启动并测试Docker

sudo systemctl start docker
sudo docker run hello-world

离线安装

下载安装

从docker官网(或者国内镜像站)下载对应linux版本的安装包,例如docker-27.0.3.tgz

将安装包上传到服务器,解压:

tar -zxvf docker-27.0.3.tgz

解压出来的文件的所有者可能不是root,修改为root用户:

chown -R root:root docker/

将解压的文件移动到/usr/bin下:

\cp -f docker/* /usr/bin

启动测试:

dockerd


配置成系统服务

将docker添加到systemd:

编辑文件/usr/lib/systemd/system/docker.service

文件内容参考:github的docker-ce官方文档

[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target docker.socket firewalld.service 
Wants=network-online.target 
Requires=docker.socket
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutStartSec=0
RestartSec=2
Restart=always
StartLimitBurst=3
StartLimitInterval=60s
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TasksMax=infinity
Delegate=yes
KillMode=process
OOMScoreAdjust=-500
[Install]
WantedBy=multi-user.target

docker.service添加执行权限:

chmod +x /usr/lib/systemd/system/docker.service


配置docker

创建docker组:

groupadd docker

编辑daemon.json配置文件:

文件:/etc/docker/daemon.json

{
    // 还可以在这个文件中配置加速器、镜像仓库地址等
    "insecure-registries": [
        // 配置不验证https证书、允许http连接
        "192.168.xxx.xxx:8088"
    ],
    "data-root":"/data/docker",
    "log-driver":"json-file",
    "log-opts":{
        "max-size":"200m","max-file":"3"
    }
}

重载配置:

systemctl daemon-reload


启动docker并设置开机自启

启动docker:

systemctl start docker

设置开机自启:

systemctl enable docker

检验:

docker version


配置命令自动补全

从docker的github官方仓库获取命令补全的文件:docker

将该文件放到/usr/share/bash-completion/completions,启用该文件:

source /usr/share/bash-completion/completions/docker
目录
相关文章
|
9月前
|
缓存 Ubuntu Linux
Docker安装
本文介绍Docker在CentOS和Ubuntu系统中的安装与配置方法,涵盖卸载旧版本、配置yum源、在线/离线安装、启动服务、设置开机自启、运行HelloWorld测试及daemon.json配置详解,并提供阿里云镜像加速、日志管理、命令补全等实用操作步骤。
|
安全 数据库连接 数据库
Navicat16最新版破解激活教程,亲测可用
本篇文章教大家如何破解 Navicat,Navicat是一套快速、可靠并价格相宜的数据库管理工具,专为简化数据库的管理及降低系统管理成本而设。它的设计符合数据库管理员、开发人员及中小企业的需要。Navicat 是以直觉化的图形用户界面而建的,让你可以以安全并且简单的方式创建、组织、访问并共用信息。
13117 0
|
9月前
|
存储 NoSQL 算法
10-Docker安装Redis
本文介绍Docker安装Redis单机与集群部署,涵盖配置映射、数据持久化及3主3从集群搭建。深入解析Redis集群存储算法:哈希取余、一致性哈希与哈希槽,重点说明槽位分配机制及16384个槽的设计原理,并演示主从扩缩容操作流程。
974 0
|
9月前
|
运维 Docker 容器
14-Docker-compose容器编排
Docker-Compose 是 Docker 官方开源工具,用于快速编排和管理多容器应用。通过编写 `docker-compose.yml` 文件定义服务关系,实现一键启停、构建、部署多个容器,简化了复杂应用的管理流程,提升开发运维效率。
198 0
数据传输的基本概念
本内容介绍了带宽、数据传输速率和吞吐量的概念及三者关系。带宽是通信链路的最大传输能力,决定理论上限;数据传输速率表示实际传输速度,受多种因素影响可能低于带宽;吞吐量则是实际测量的传输速率,反映网络真实性能。用公路类比:带宽是宽度(容量)、数据传输速率是速度、吞吐量是实际通行量。
2551 7
|
9月前
|
Ubuntu Linux 测试技术
Linux系统离线安装Docker完整指南
本文详细介绍在Ubuntu 24等Linux系统中离线安装Docker的完整流程,适用于内网隔离环境。涵盖安装包下载、`docker.service`配置、安装与卸载脚本编写、权限设置、镜像测试及用户组配置,并包含docker-compose的离线部署方法,助力高效完成生产环境搭建。
10561 4
Linux系统离线安装Docker完整指南
|
Docker 容器
Docker服务启动失败报错:Job for docker.service failed because the control process exited with error code.
Docker服务启动失败报错:Job for docker.service failed because the control process exited with error code.
8968 1
|
机器学习/深度学习 人工智能 自然语言处理
GLM-4V-Flash:智谱 AI 免费开放的图像理解大模型 API 接口
智谱AI推出的GLM-4V-Flash是一款专注于图像理解的免费开放大模型,提供API接口支持用户上传图片URL或Base64编码图片获取详细的图像描述。该模型通过深度学习和卷积神经网络技术,简化了图像分析流程,提高了开发效率,适用于内容审核、辅助视障人士、社交媒体、教育和电子商务等多个应用场景。
11519 14
GLM-4V-Flash:智谱 AI 免费开放的图像理解大模型 API 接口