Debian 12安装Docker以及Docker Compose
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