admin管理员组

文章数量:1130349

在 Armbian 系统上安装 Docker(使用国内镜像)

本文提供了一篇完整的教程,指导您在 Armbian 系统(适用于 ARM 架构设备,如网心云 OEC-Turbo)上安装 Docker。Armbian 基于 Debian/Ubuntu,因此安装过程类似,但考虑到网络问题(如访问国外源慢或失败),将优先使用国内镜像(如阿里云、清华镜像站)来加速下载和安装。教程假设您已以 root 权限操作(使用 sudo su 或直接 root 用户),并确保系统已连接网络。

前提条件

  • 系统要求:Armbian 系统(Debian 或 Ubuntu 变体),架构为 arm64 或 armhf(运行 uname -m 确认,通常为 aarch64)。
  • 网络:确保能访问互联网。如果有网络问题(如 curl 失败),可先更换 DNS:
    echo "nameserver 8.8.8.8" > /etc/resolv.conf
    echo "nameserver 1.1.1.1" >> /etc/resolv.conf
    
  • 更新系统:安装前更新软件包:
    apt update && apt upgrade -y
    
  • 警告:备份重要数据。安装 Docker 可能需要重启系统。

步骤 1: 安装依赖包

安装必要的依赖,以支持 HTTPS 和其他工具:

apt install -y apt-transport-https ca-certificates curl gnupg lsb-release

步骤 2: 使用国内镜像安装 Docker(推荐便捷脚本方法)

Docker 官方提供了一个便捷脚本 get-docker.sh,可自动检测系统并安装。我们使用阿里云镜像(–mirror Aliyun)来加速,避免访问国外源失败。

  1. 下载脚本:

    curl -fsSL https://get.docker -o get-docker.sh
    
    • 如果 curl 失败,尝试 wget:
      wget https://get.docker -O get-docker.sh
      
    • 或使用国内镜像下载:
      curl -fsSL https://mirrors.aliyun/docker-ce/linux/debian/get-docker.sh -o get-docker.sh
      
  2. 执行脚本,使用阿里云镜像:

    sh get-docker.sh --mirror Aliyun
    
    • 替代镜像:如果阿里云不可用,试用 AzureChinaCloud:
      sh get-docker.sh --mirror AzureChinaCloud
      
    • 脚本会自动添加存储库、安装 docker-ce、docker-ce-cli 和 containerd.io。
  3. 如果脚本失败,可手动配置国内镜像源(清华镜像站示例):

    • 添加 GPG 密钥(使用国内镜像):
      curl -fsSL https://mirrors.tuna.tsinghua.edu/docker-ce/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
      chmod a+r /etc/apt/keyrings/docker.gpg
      
    • 添加清华镜像存储库(替换 $(lsb_release -cs) 为您的代号,如 bookworm):
      echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu/docker-ce/linux/debian $(lsb_release -cs) stable" > /etc/apt/sources.list.d/docker.list
      
    • 更新并安装:
      apt update
      apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
      

步骤 3: 配置 Docker 镜像加速器(国内镜像)

安装后,配置 Docker 使用国内镜像加速器,以加速拉取镜像(如从 Docker Hub 下载)。

  1. 创建或编辑配置文件:

    mkdir -p /etc/docker
    nano /etc/docker/daemon.json
    
  2. 添加以下内容(使用阿里云或网易云镜像):

    {
      "registry-mirrors": [
        "https://registry.docker-cn",
        "https://mirrors.tencentyun",
        "https://docker.mirrors.ustc.edu",
        "https://hub-mirror.c.163"
      ]
    }
    
    • 保存并退出(Ctrl+O, Enter, Ctrl+X)。
  3. 重启 Docker 服务:

    systemctl daemon-reload
    systemctl restart docker
    

步骤 4: (可选)安装 Docker Compose

Docker Compose 用于管理多容器应用,也可使用国内镜像下载。

  1. 下载最新版本(检查 https://github/docker/compose/releases 获取最新版本,以 v2.29.2 为例):

    curl -L "https://get.daocloud.io/docker/compose/releases/download/v2.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    
    • 或使用 GitHub 国内加速:
      curl -L "https://github/docker/compose/releases/download/v2.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
      
  2. 添加执行权限:

    chmod +x /usr/local/bin/docker-compose
    
  3. 验证:

    docker-compose --version
    

步骤 5: 验证安装

  1. 检查 Docker 服务状态:

    systemctl status docker
    
    • 应显示 active (running)。
  2. 测试运行一个容器:

    docker run hello-world
    
    • 输出应包含 “Hello from Docker!”。
  3. 检查 Docker 版本:

    docker --version
    
  4. (可选)允许非 root 用户运行 Docker:

    usermod -aG docker $USER
    
    • 注销并重新登录生效。

步骤 6: 故障排查

  • 网络问题(curl/wget 失败):更换 DNS 或使用代理。测试:
    ping mirrors.aliyun
    
  • 包不可用(no installation candidate):确认架构和代号(uname -mlsb_release -cs)。尝试切换镜像源,如清华或华为云。
  • Docker 服务启动失败:查看日志:
    journalctl -u docker
    
    • 常见原因:内核不支持 overlayfs(运行 cat /proc/filesystems | grep overlay 确认)。
  • 镜像拉取慢:确认 /etc/docker/daemon.json 配置正确,并重启 Docker。
  • Armbian 特定问题:如果系统源缺失(如 /etc/apt/sources.list),添加默认源:
    echo "deb http://deb.debian/debian bookworm main contrib non-free" > /etc/apt/sources.list
    apt update
    
  • 卸载 Docker(如果需要):
    apt purge -y docker-ce docker-ce-cli containerd.io
    rm -rf /var/lib/docker /etc/docker
    rm /etc/apt/sources.list.d/docker.list
    

总结

通过以上步骤,您可以使用国内镜像快速在 Armbian 系统上安装 Docker,避免了访问国外源的网络问题。安装完成后,您可以部署容器化应用,如运行 Nginx 测试:

docker run -d -p 80:80 nginx

访问设备 IP 的 80 端口查看。

在 Armbian 系统上安装 Docker(使用国内镜像)

本文提供了一篇完整的教程,指导您在 Armbian 系统(适用于 ARM 架构设备,如网心云 OEC-Turbo)上安装 Docker。Armbian 基于 Debian/Ubuntu,因此安装过程类似,但考虑到网络问题(如访问国外源慢或失败),将优先使用国内镜像(如阿里云、清华镜像站)来加速下载和安装。教程假设您已以 root 权限操作(使用 sudo su 或直接 root 用户),并确保系统已连接网络。

前提条件

  • 系统要求:Armbian 系统(Debian 或 Ubuntu 变体),架构为 arm64 或 armhf(运行 uname -m 确认,通常为 aarch64)。
  • 网络:确保能访问互联网。如果有网络问题(如 curl 失败),可先更换 DNS:
    echo "nameserver 8.8.8.8" > /etc/resolv.conf
    echo "nameserver 1.1.1.1" >> /etc/resolv.conf
    
  • 更新系统:安装前更新软件包:
    apt update && apt upgrade -y
    
  • 警告:备份重要数据。安装 Docker 可能需要重启系统。

步骤 1: 安装依赖包

安装必要的依赖,以支持 HTTPS 和其他工具:

apt install -y apt-transport-https ca-certificates curl gnupg lsb-release

步骤 2: 使用国内镜像安装 Docker(推荐便捷脚本方法)

Docker 官方提供了一个便捷脚本 get-docker.sh,可自动检测系统并安装。我们使用阿里云镜像(–mirror Aliyun)来加速,避免访问国外源失败。

  1. 下载脚本:

    curl -fsSL https://get.docker -o get-docker.sh
    
    • 如果 curl 失败,尝试 wget:
      wget https://get.docker -O get-docker.sh
      
    • 或使用国内镜像下载:
      curl -fsSL https://mirrors.aliyun/docker-ce/linux/debian/get-docker.sh -o get-docker.sh
      
  2. 执行脚本,使用阿里云镜像:

    sh get-docker.sh --mirror Aliyun
    
    • 替代镜像:如果阿里云不可用,试用 AzureChinaCloud:
      sh get-docker.sh --mirror AzureChinaCloud
      
    • 脚本会自动添加存储库、安装 docker-ce、docker-ce-cli 和 containerd.io。
  3. 如果脚本失败,可手动配置国内镜像源(清华镜像站示例):

    • 添加 GPG 密钥(使用国内镜像):
      curl -fsSL https://mirrors.tuna.tsinghua.edu/docker-ce/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
      chmod a+r /etc/apt/keyrings/docker.gpg
      
    • 添加清华镜像存储库(替换 $(lsb_release -cs) 为您的代号,如 bookworm):
      echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu/docker-ce/linux/debian $(lsb_release -cs) stable" > /etc/apt/sources.list.d/docker.list
      
    • 更新并安装:
      apt update
      apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
      

步骤 3: 配置 Docker 镜像加速器(国内镜像)

安装后,配置 Docker 使用国内镜像加速器,以加速拉取镜像(如从 Docker Hub 下载)。

  1. 创建或编辑配置文件:

    mkdir -p /etc/docker
    nano /etc/docker/daemon.json
    
  2. 添加以下内容(使用阿里云或网易云镜像):

    {
      "registry-mirrors": [
        "https://registry.docker-cn",
        "https://mirrors.tencentyun",
        "https://docker.mirrors.ustc.edu",
        "https://hub-mirror.c.163"
      ]
    }
    
    • 保存并退出(Ctrl+O, Enter, Ctrl+X)。
  3. 重启 Docker 服务:

    systemctl daemon-reload
    systemctl restart docker
    

步骤 4: (可选)安装 Docker Compose

Docker Compose 用于管理多容器应用,也可使用国内镜像下载。

  1. 下载最新版本(检查 https://github/docker/compose/releases 获取最新版本,以 v2.29.2 为例):

    curl -L "https://get.daocloud.io/docker/compose/releases/download/v2.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    
    • 或使用 GitHub 国内加速:
      curl -L "https://github/docker/compose/releases/download/v2.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
      
  2. 添加执行权限:

    chmod +x /usr/local/bin/docker-compose
    
  3. 验证:

    docker-compose --version
    

步骤 5: 验证安装

  1. 检查 Docker 服务状态:

    systemctl status docker
    
    • 应显示 active (running)。
  2. 测试运行一个容器:

    docker run hello-world
    
    • 输出应包含 “Hello from Docker!”。
  3. 检查 Docker 版本:

    docker --version
    
  4. (可选)允许非 root 用户运行 Docker:

    usermod -aG docker $USER
    
    • 注销并重新登录生效。

步骤 6: 故障排查

  • 网络问题(curl/wget 失败):更换 DNS 或使用代理。测试:
    ping mirrors.aliyun
    
  • 包不可用(no installation candidate):确认架构和代号(uname -mlsb_release -cs)。尝试切换镜像源,如清华或华为云。
  • Docker 服务启动失败:查看日志:
    journalctl -u docker
    
    • 常见原因:内核不支持 overlayfs(运行 cat /proc/filesystems | grep overlay 确认)。
  • 镜像拉取慢:确认 /etc/docker/daemon.json 配置正确,并重启 Docker。
  • Armbian 特定问题:如果系统源缺失(如 /etc/apt/sources.list),添加默认源:
    echo "deb http://deb.debian/debian bookworm main contrib non-free" > /etc/apt/sources.list
    apt update
    
  • 卸载 Docker(如果需要):
    apt purge -y docker-ce docker-ce-cli containerd.io
    rm -rf /var/lib/docker /etc/docker
    rm /etc/apt/sources.list.d/docker.list
    

总结

通过以上步骤,您可以使用国内镜像快速在 Armbian 系统上安装 Docker,避免了访问国外源的网络问题。安装完成后,您可以部署容器化应用,如运行 Nginx 测试:

docker run -d -p 80:80 nginx

访问设备 IP 的 80 端口查看。

本文标签: 系统Armbiandocker