虚拟化容器实践-Docker安装配置

请注意,本文编写于 210 天前,最后修改于 142 天前,其中某些信息可能已经过时。

Docker实践的开始:Docker安装、Docker镜像加速、sudo用户组配置、完全卸载清理~

CentOS7安装docker

1.检查当前系统是否有安装docker

docker --version #仅显示Docker Engine版本
docker version    #显示Docker版本详细信息
docker -V

2.如果我们系统安装过Doker,首先需要卸载旧版本。

# 删除旧版本
yum remove docker \
         docker-client \
         docker-client-latest \
         docker-common \
         docker-latest \
         docker-latest-logrotate \
         docker-logrotate \
         docker-selinux \
         docker-engine-selinux \
         docker-engine

删除所有旧的数据

 sudo rm -rf /var/lib/docker

3.更新系统:

sudo yum update

4.安装所需的软件包以允许yum使用HTTPS存储库:

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

5.添加Docker的官方GPG密钥:

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

6.安装Docker Engine-Community:

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

7.启动Docker服务:

sudo systemctl start dockers

8.设置Docker服务开机自启动:

sudo systemctl enable docker

9.验证Docker是否成功安装:

#查看Docker版本
sudo docker -V
sudo docker --version

#运行一个hello-world容器
sudo docker run hello-world

请注意,这些命令需要以root用户或具有sudo权限的用户身份运行。

Ubuntu安装Docker

Docker运行的系统环境的安装以Ubuntu Linux为例,官方文档:在Ubuntu上安装Docker引擎

安装方法一:脚本自动安装

安装命令如下:

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh --mirror Aliyun

也可以使用国内 daocloud 一键安装命令:

curl -sSL https://get.daocloud.io/docker | sh

安装方法二:手动命令安装

1.卸载旧版本:

Docker 的旧版本被称为 dockerdocker.iodocker-engine 。如果已安装,请卸载它们:最新版本称为:Docker CE

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

2.安装所需依赖包

sudo apt update
sudo apt install ca-certificates curl gnupg lsb-release -y

3.添加 Docker 的官方 GPG 密钥:

sudo curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

4.指定软件源并指定stable稳定版

add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

5.安装源里的最新版docker ce

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

6.配置用户组

非root用户也不用加sudo,即可直接使用docker命令。

groupadd docker         #添加docker用户组

gpasswd -a 用户名 docker #将登陆用户加入到docker用户组中

newgrp docker             #更新用户组

最后重启docker生效:

systemctl restart docker

7.验证安装

docker -v  #显示docker版本
# Docker version 24.0.6, build ed223bc
docker compose version #显示Docker compose版本
# Docker Compose version v2.21.0
#运行第一个容器hello-world
docker run --rm hello-world

配置docker镜像加速

#创建配置文件
sudo touch /etc/docker/daemon.json
#写入镜像加速信息
echo {"registry-mirrors": ["https://reg-mirror.qiniu.com"]} > /etc/docker/daemon.json

或者写入多条镜像源也没问题:

# /etc/docker/daemon.json
{
  "registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com",
    "https://reg-mirror.qiniu.com",
    "https://docker.mirrors.ustc.edu.cn/"
  ]
}

最后重启docker

systemctl restart docker

镜像加速可以任意选择,常见镜像加速如下:

到这配置完成后,就可以用docker启动容器拉取镜像了。

Debian安装Docker

官方安装Docs:在Debian上安装Docker

1.与Ubuntu版本大同小异。先卸载旧版本:

Docker 的旧版本被称为 dockerdocker.iodocker-engine 。如果已安装,请卸载它们:最新版本称为:Docker CE

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

2.安装所需依赖包

sudo apt update
sudo apt install apt-transport-https ca-certificates curl gnupg lsb-release -y
  1. 添加 Docker 阿里云的GPG密钥:
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
  1. 添加阿里云源并指定stable稳定版
echo \
  "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/debian \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  1. 安装源里的最新版docker ce
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
  1. 配置用户组

非root用户也不用加sudo,即可直接使用docker命令。默认情况下,docker 命令会使用 Unix socket 与Docker引擎通讯。而只有root用户和docker组的用户才可以访问 Docker引擎的Unix socket。出于安全考虑,一般Linux系统上不会直接使用root用户。因此,更好地做法是将需要使用docker的用户加入docker用户组。

groupadd docker         #添加docker用户组

gpasswd -a 用户名 docker #将登陆用户加入到docker用户组中
# sudo usermod -aG docker $USER

newgrp docker             #更新用户组

最后重启docker生效:

systemctl restart docker
  1. 验证安装
docker -v          #显示docker版本
# Docker version 24.0.6, build ed223bc
docker compose version         #显示Docker compose版本
# Docker Compose version v2.21.0
#运行第一个容器hello-world
docker run --rm hello-world

成功运行第一个容器
成功运行第一个容器

  1. 配置docker镜像加速
#创建配置文件
sudo touch /etc/docker/daemon.json
#写入镜像加速信息
echo {"registry-mirrors": ["https://reg-mirror.qiniu.com"]} > /etc/docker/daemon.json

最后重启docker

systemctl restart docker

镜像加速可以任意选择,常见镜像加速如下:

卸载 Docker

卸载docker安装包:

sudo apt purge remove docker-ce
sudo apt purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras

删除镜像、容器、配置文件等内容:

sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd

sudo apt autoremove

独立安装/升级Docker Compose

安装Docker Compose之前需要先安装Docker引擎服务。

安装方式一:官方安装命令

  1. 下载二进制包
curl -SL https://github.com/docker/compose/releases/download/v2.22.0/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
  • 从GitHub页面下载对应的二进制包,存放在/usr/local/bin/重命名为:docker-compose
  • v2.22.0为版本号,可以关注Releases页面然后替换为最新的版本号v2.xx.xx
  1. 给予二进制包执行权限
sudo chmod +x /usr/local/bin/docker-compose
  1. 创建指向安装目录的软链接
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
  1. 查看版本-验证安装成功
docker-compose --version
# 正确输出版本即为安装成功
Docker Compose version v2.22.0

安装方式二:手动下载二进制包

如果使用官方安装命令因服务器网络原因,导致的无法安装成功,那么直接在物理本机挂梯子去往Docker官方GitHub发布页面进行下载二进制包进行安装。

官方GitHub链接:https://github.com/docker/compose/releases

Github发布页面
Github发布页面

  1. 下载完成后,将包上传到服务器,存放到/usr/local/bin/(如果该目录无权限,请使用root账户或给当前用户添加目录写入权限) 并更名:
mv /usr/local/bin/docker-compose-linux-x86_64 /usr/local/bin/docker-compose
  1. 给予二进制包执行权限
sudo chmod +x /usr/local/bin/docker-compose
  1. 创建指向安装目录的软链接
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
  1. 查看版本-验证安装成功
docker-compose --version
# 正确输出版本即为安装成功
Docker Compose version v2.22.0

卸载Docker Compose

直接删除二进制文件即可

sudo rm /usr/local/bin/docker-compose

部分内容来自于Docker官网Docs菜鸟教程

Comments

添加新评论