Linux日杂文章
记linux安装jdk及maven
Debian安装 Docker及Docker Compose
针对国内使用docker进行加速
本文档使用 MrDoc 发布
-
+
Debian安装 Docker及Docker Compose
## 使用官方源安装 Docker > 以下操作需要在 root 用户下完成,请使用 sudo -i 或 su root 切换到 root 用户进行操作。 ### 首先,安装一些必要的软件包: ``` apt update apt upgrade -y apt install curl vim wget gnupg dpkg apt-transport-https lsb-release ca-certificates ``` ### 然后加入 Docker 的 GPG 公钥和 apt 源: ``` Debian 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 的国内源: ``` Debian 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 ``` ### 然后更新系统后即可安装 Docker CE 和 Docker Compose 插件: ``` apt update apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin ``` ### 此时可以使用 docker version 命令检查是否安装成功: ``` root@debian ~ # docker version Client: Docker Engine - Community Version: 26.1.4 API version: 1.45 Go version: go1.21.11 Git commit: 5650f9b Built: Wed Jun 5 11:29:22 2024 OS/Arch: linux/amd64 Context: default Server: Docker Engine - Community Engine: Version: 26.1.4 API version: 1.45 (minimum version 1.24) Go version: go1.21.11 Git commit: de5c9cf Built: Wed Jun 5 11:29:22 2024 OS/Arch: linux/amd64 Experimental: true containerd: Version: 1.6.33 GitCommit: d2d58213f83a351ca8f528a95fbd145f5654e957 runc: Version: 1.1.12 GitCommit: v1.1.12-0-g51d5e94 docker-init: Version: 0.19.0 GitCommit: de40ad0 ``` ### 特定用户运行 > 如果需要某个特定用户可以用 Docker rootless 模式运行 Docker,那么可以把这个用户也加入 docker 组,比如我们把 www-data 用户加进去: ``` apt install docker-ce-rootless-extras sudo usermod -aG docker www-data ``` ## 安装 Docker Compose 因为我们已经安装了 docker-compose-plugin,所以 Docker 目前已经自带 docker compose 命令,基本上可以替代 docker-compose: ``` root@debian ~ # docker compose version Docker Compose version v2.27.1 ``` 如果某些镜像或命令不兼容,则我们还可以添加docker-compose ``` 查看是否存在docker-compose root@debian:/usr/local# find / -name docker-compose /usr/libexec/docker/cli-plugins/docker-compose 创建软连接: ln -s /usr/libexec/docker/cli-plugins/docker-compose /usr/local/bin/docker-compose ``` 如没有,可单独安装 Docker Compose: 使用 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 命令检查是否安装成功: ``` root@debian ~ # docker-compose version Docker Compose version v2.27.1 ``` ### 修改 Docker 配置 以下配置会增加一段自定义内网 IPv6 地址,开启容器的 IPv6 功能,以及限制日志文件大小,防止 Docker 日志塞满硬盘 (泪的教训): ``` 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`
admin
2024年11月20日 16:12
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
PDF文档(打印)
分享
链接
类型
密码
更新密码