分类 Docker 下的文章

Docker是一种容器化技术,可以在服务器上快速搭建容器并在不污染宿主机的情况下运行软件,而不再需要安装配置各种环境。

安装Docker

1.首先,安装一些必要的软件包:

apt update
apt upgrade -y
apt install curl vim wget gnupg dpkg apt-transport-https lsb-release ca-certificates

2.然后加入 Docker 的 GPG 公钥和 apt 源:

curl -sSL https://download.docker.com/linux/debian/gpg | gpg --dearmor > /usr/share/keyrings/docker-ce.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-ce.gpg] https://download.docker.com/linux/debian $(lsb_release -sc) stable" > /etc/apt/sources.list.d/docker.list

国内机器可以用清华 TUNA 的国内源:

curl -sS https://download.docker.com/linux/debian/gpg | gpg --dearmor > /usr/share/keyrings/docker-ce.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-ce.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian $(lsb_release -sc) stable" > /etc/apt/sources.list.d/docker.list

3.更新系统后即可安装 Docker CE

apt update
apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin

使用 docker version 命令检查是否安装成功:

 ~ # docker version

4.使用特定用户运行Docker(可选)

特定用户可以用 Docker rootless 模式运行 Docker,把用户也加入 docker 组,比如我们把 www-data 用户加进去:

apt install docker-ce-rootless-extras
sudo usermod -aG docker www-data

5.修改 Docker 配置

以下配置会增加一段自定义内网 IPv6 地址,开启容器的 IPv6 功能,以及限制日志文件大小。

cat > /etc/docker/daemon.json << EOF
{
    "log-driver": "json-file",
    "log-opts": {
        "max-size": "20m",
        "max-file": "3"
    },
    "ipv6": true,
    "fixed-cidr-v6": "fd00:dead:beef:c0::/80",
    "experimental":true,
    "ip6tables":true
}
EOF

重启 Docker 服务:

systemctl restart docker
Docker Compose是一个用于在单个主机上定义和运行多个 Docker 容器的工具。它使用 YAML 文件来配置应用程序的服务,然后使用一个命令就可以创建并启动所有服务。

安装 Docker Compose

安装Docker时安装了 docker-compose-plugin,所以 Docker 目前已经自带 docker compose 命令,基本上可以替代 docker-compose

~ # docker compose version
Docker Compose version v2.24.5

1.使用 Docker 官方发布的 Github 直接安装最新版本:

curl -L https://github.com/docker/compose/releases/latest/download/docker-compose-Linux-x86_64 > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

使用 docker-compose version 命令检查是否安装成功:

~ # docker-compose version
Docker Compose version v2.18.1

本文以Ubuntu20.05系统为例安装docker。

检查卸载老版本docker

ubuntu下自带了docker的库,不需要添加新的源。

但是ubuntu自带的docker版本太低,需要先卸载旧的再安装新的。

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

如果不能正常卸载,显示无权限时,需要添加管理员权限才可进行卸载。

安装步骤

  1. 更新软件包

在终端中执行以下命令来更新Ubuntu软件包列表和已安装软件的版本:

sudo apt update
sudo apt upgrade
  1. 安装docker依赖

Docker在Ubuntu上依赖一些软件包。执行以下命令来安装这些依赖:

apt-get install ca-certificates curl gnupg lsb-release
  1. 添加Docker官方GPG密钥

执行以下命令来添加Docker官方的GPG密钥:

curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
  1. 添加Docker软件源

执行以下命令来添加Docker的软件源:

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

注:该命令需要使用root权限

  1. 安装docker

执行以下命令来安装Docker:

apt-get install docker-ce docker-ce-cli containerd.io
  1. 配置用户组(可选)

默认情况下,只有root用户和docker组的用户才能运行Docker命令。我们可以将当前用户添加到docker组,以避免每次使用Docker时都需要使用sudo。命令如下:

sudo usermod -aG docker $USER

注:重新登录才能使更改生效。

运行docker

我们可以通过启动docker来验证我们是否成功安装。命令如下:

systemctl start docker

安装工具

apt-get -y install apt-transport-https ca-certificates curl software-properties-common

重启docker

service docker restart

复制

验证是否成功

sudo docker run hello-world

查看版本

我们可以通过下面的命令来查看docker的版本

sudo docker version

查看镜像

上面我们拉取了hello-world的镜像,现在我们可以通过命令来查看镜像,命令如下:

sudo docker images
您是第 68104 位访客