ubuntu与docker如何集成
导读:Ubuntu 与 Docker 集成实操指南 一 安装与启动 更新系统并安装依赖 sudo apt update && sudo apt upgrade -y sudo apt install -y apt-transp...
Ubuntu 与 Docker 集成实操指南
一 安装与启动
- 更新系统并安装依赖
- sudo apt update & & sudo apt upgrade -y
- sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release
- 卸载旧版组件(如有)
- sudo apt remove -y docker docker-engine docker.io containerd runc
- 添加 Docker 官方 GPG 密钥与软件源(使用 keyring 更安全)
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
- echo “deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable” | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
- 安装 Docker Engine 与可选插件
- sudo apt update
- sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
- 启动并设置开机自启
- sudo systemctl start docker
- sudo systemctl enable docker
- 验证安装
- docker --version
- sudo docker run --rm hello-world
二 非 root 使用与常用管理
- 允许非 root 用户执行 docker(推荐)
- sudo usermod -aG docker $USER
- 注意:需重新登录或重启会话后生效
- 常用命令
- 查看容器:docker ps -a
- 启动/停止/重启:docker start|stop|restart < 容器名或ID>
- 进入容器:docker exec -it < 容器名或ID> bash
- 日志查看:docker logs -f < 容器名或ID>
- 清理资源:docker system prune -a --volumes(谨慎,会删除未使用镜像/容器/网络/卷)
三 镜像加速与网络 DNS 配置
- 配置镜像加速(提升拉取速度,按需选择镜像源)
- sudo mkdir -p /etc/docker
- sudo tee /etc/docker/daemon.json < < -‘EOF’ { “registry-mirrors”: [ “https://docker.mirrors.tuna.tsinghua.edu.cn”, “https://ccr.ccs.tencentyun.com”, “https://docker.m.daocloud.io” ] } EOF
- sudo systemctl restart docker
- 容器无法访问互联网时配置 DNS
- sudo tee /etc/docker/daemon.json < < -‘EOF’ { “dns”: [“8.8.8.8”, “114.114.114.114”] } EOF
- sudo systemctl restart docker
四 Docker Compose 与服务编排
- 安装方式
- Ubuntu 22.04+ 建议直接使用插件:sudo apt install -y docker-compose-plugin
- 也可使用独立二进制(示例为旧版本,仅供兼容性参考):
- sudo curl -L “https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)” -o /usr/local/bin/docker-compose
- sudo chmod +x /usr/local/bin/docker-compose
- 基本用法
- 在项目目录创建 docker-compose.yml(示例)
- version: “3.8”
- services:
- web:
- image: nginx:latest
- ports:
- “8080:80”
- web:
- 启动/查看/停止
- docker compose up -d
- docker compose ps
- docker compose down
- 在项目目录创建 docker-compose.yml(示例)
五 GPU 加速与常见问题
- GPU 加速(NVIDIA 容器工具链)
- 安装 nvidia-docker2(确保已安装合适版本的 NVIDIA 驱动)
- sudo apt update & & sudo apt install -y nvidia-docker2
- sudo systemctl restart docker
- 运行 GPU 容器
- docker run --rm --gpus all nvidia/cuda:12.4-base nvidia-smi
- 安装 nvidia-docker2(确保已安装合适版本的 NVIDIA 驱动)
- 常见问题速解
- 安装失败提示 “package ‘docker-ce’ has no installation candidate”
- 重新导入 GPG 并清理旧源后更新:
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
- sudo rm /etc/apt/sources.list.d/docker.list
- sudo apt update
- 重新导入 GPG 并清理旧源后更新:
- 磁盘空间不足
- 定期执行:docker system prune -a --volumes
- 构建/运行性能优化
- 使用 Buildx 进行多平台构建:
- docker buildx create --name mybuilder & & docker buildx use mybuilder
- docker buildx build --platform linux/amd64,linux/arm64 -t yourimage:latest --push .
- 使用 Buildx 进行多平台构建:
- 安装失败提示 “package ‘docker-ce’ has no installation candidate”
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: ubuntu与docker如何集成
本文地址: https://pptw.com/jishu/751349.html
