# 零刻 ME Pro 龙芯安装 Docker 教程

##### <span class="md-plain">Docker 官方仓库未提供 loong64 架构的软件包，执行官方安装脚本会提示找不到软件包。本教程使用 Loongnix 软件源中的 docker.io，安装后得到 Docker 26.1.5、containerd 1.7.24 与 docker compose 2.26.1。</span>

> ##### <span class="md-plain">注意：Docker 镜像是分 CPU 架构的。龙芯为 loong64 架构，Docker Hub 上大部分镜像只提供 amd64 和 arm64 版本，直接拉取会提示 </span><span class="md-pair-s" spellcheck="false">`no matching manifest for linux/loong64`</span><span class="md-plain">。部署项目前请先确认该项目是否提供 loong64 镜像。</span>

---

## <span class="md-plain">准备工作</span>

<span class="md-plain">[龙芯 install-docker.sh](https://dl.bee-link.cn/download/dXBsb2Fkcy8lRTYlOEMlODclRTUlOEQlOTcvTUUtUHJvL01FJTIwUHJvJTIwJUU5JUJFJTk5JUU4JThBJUFGLyVFOSVCRSU5OSVFOCU4QSVBRiVFNSVBRSU4OSVFOCVBMyU4NURvY2tlci9pbnN0YWxsLWRvY2tlci5zaA==/h/c9eed95e2fae22f28c076e70b6f29618)</span>

##### <span class="md-plain">点击上方的附件，跳转下载 </span><span class="md-pair-s" spellcheck="false">`install-docker.sh`</span><span class="md-plain">。</span>

##### <span class="md-plain">脚本默认保存到「下载」目录，完整路径为 </span><span class="md-pair-s" spellcheck="false">`/home/用户名/下载`。</span>

[![Screenshot_2026-10-29_15-51-24.png](https://doc.bee-link.com.cn/uploads/images/gallery/2026-10/scaled-1680-/MZ2l7yrqmcnhogAr-screenshot-2026-10-29-15-51-24.png)](https://doc.bee-link.com.cn/uploads/images/gallery/2026-10/MZ2l7yrqmcnhogAr-screenshot-2026-10-29-15-51-24.png)

---

## <span class="md-plain">安装 Docker</span>

### <span class="md-plain">执行安装脚本</span>

##### <span class="md-plain">进入脚本所在目录，执行：</span>

```
cd ~/下载<br></br>sudo bash install-docker.sh
```

##### <span class="md-plain">脚本会自动请求 root 权限，随后依次执行以下 8 个步骤：</span>

[![Screenshot_2026-10-29_15-52-43.png](https://doc.bee-link.com.cn/uploads/images/gallery/2026-10/scaled-1680-/pJxDdh3NH8ExzfA2-screenshot-2026-10-29-15-52-43.png)](https://doc.bee-link.com.cn/uploads/images/gallery/2026-10/pJxDdh3NH8ExzfA2-screenshot-2026-10-29-15-52-43.png)

1. ##### <span class="md-plain">检查系统环境</span>
2. ##### <span class="md-plain">更新软件源</span>
3. ##### <span class="md-plain">安装 docker</span>
4. ##### <span class="md-plain">配置守护进程</span>
5. ##### <span class="md-plain">启动 docker 并设置开机自启</span>
6. ##### <span class="md-plain">添加用户到 docker 组</span>
7. ##### <span class="md-plain">注册 compose 插件</span>
8. ##### <span class="md-plain">验证安装</span>

##### <span class="md-plain">期间请勿强制中断。</span>

[![Screenshot_2026-10-29_15-52-46.png](https://doc.bee-link.com.cn/uploads/images/gallery/2026-10/scaled-1680-/e7zG8cJPYSwGmUg6-screenshot-2026-10-29-15-52-46.png)](https://doc.bee-link.com.cn/uploads/images/gallery/2026-10/e7zG8cJPYSwGmUg6-screenshot-2026-10-29-15-52-46.png)

---

## <span class="md-plain">验证安装</span>

##### <span class="md-plain">脚本完成后会输出以下结果：</span>

```
8/8  验证安装<br></br>    客户端 26.1.5+dfsg1　服务端 26.1.5+dfsg1<br></br>    存储驱动 overlay2　运行时 runc　Cgroup systemd<br></br>    拉取测试镜像 lcr.loongnix.cn/library/alpine:3.24<br></br>    容器运行正常，输出 loongarch64
```

##### <span class="md-plain">出现「容器运行正常，输出 loongarch64」，即表示 Docker 服务、容器运行时与镜像拉取均正常。</span>

[![Screenshot_2026-10-29_15-53-50.png](https://doc.bee-link.com.cn/uploads/images/gallery/2026-10/scaled-1680-/JVT6FgmAb2w20NkJ-screenshot-2026-10-29-15-53-50.png)](https://doc.bee-link.com.cn/uploads/images/gallery/2026-10/JVT6FgmAb2w20NkJ-screenshot-2026-10-29-15-53-50.png)

> ##### <span class="md-plain">注意：如安装时添加了 </span><span class="md-pair-s" spellcheck="false">`--skip-test`</span><span class="md-plain"> 跳过测试，或当时镜像拉取失败，可在网络恢复后执行 </span><span class="md-pair-s" spellcheck="false">`docker run --rm lcr.loongnix.cn/library/alpine:3.24 uname -m`</span><span class="md-plain"> 补做验证，输出 </span><span class="md-pair-s" spellcheck="false">`loongarch64`</span><span class="md-plain"> 即表示容器可正常运行。</span>

### <span class="md-plain">使 docker 组权限生效</span>

##### <span class="md-plain">脚本将当前用户加入 docker 组后，组权限在新的会话中生效。如需立即生效，执行：</span>

```
newgrp docker
```

##### <span class="md-plain">后续重启系统即可永久生效。</span>

##### <span class="md-plain">执行 </span><span class="md-pair-s" spellcheck="false">`docker ps`</span><span class="md-plain"> 不会提示 </span><span class="md-pair-s" spellcheck="false">`permission denied`</span><span class="md-plain"> 即表示成功。</span>

[![Screenshot_2026-10-29_15-54-21.png](https://doc.bee-link.com.cn/uploads/images/gallery/2026-10/scaled-1680-/73ILmZJaf9Bw7Q6U-screenshot-2026-10-29-15-54-21.png)](https://doc.bee-link.com.cn/uploads/images/gallery/2026-10/73ILmZJaf9Bw7Q6U-screenshot-2026-10-29-15-54-21.png)

## <span class="md-plain">配置文件说明</span>

##### <span class="md-plain">脚本写入的 </span><span class="md-pair-s" spellcheck="false">`/etc/docker/daemon.json`</span><span class="md-plain"> 内容如下：</span>

```
{<br></br>  "registry-mirrors": ["https://docker.m.daocloud.io", "https://docker.1ms.run"],<br></br>  "log-driver": "json-file",<br></br>  "log-opts": { "max-size": "50m", "max-file": "3" },<br></br>  "live-restore": true<br></br>}
```

- ##### <span class="md-pair-s ">**<span class="md-plain">registry-mirrors</span>**</span><span class="md-plain">：docker.io 的镜像加速地址，拉取镜像时优先走这两个站点</span>
- ##### <span class="md-pair-s ">**<span class="md-plain">log-opts</span>**</span><span class="md-plain">：单个容器日志上限 50MB，最多保留 3 份，避免写满 eMMC</span>
- ##### <span class="md-pair-s ">**<span class="md-plain">live-restore</span>**</span><span class="md-plain">：重启 docker 服务时容器不中断，升级 docker 时不必先停容器</span>

##### <span class="md-plain">修改配置后执行 </span><span class="md-pair-s" spellcheck="false">`sudo systemctl restart docker`</span><span class="md-plain"> 生效。</span>

---

## <span class="md-plain">常见问题</span>

### <span class="md-plain">提示 no matching manifest for linux/loong64</span>

##### <span class="md-plain">Docker Hub 上的镜像大多未提供 loong64 版本，换用 </span><span class="md-pair-s" spellcheck="false">`lcr.loongnix.cn`</span><span class="md-plain"> 提供的镜像即可。</span>

### <span class="md-plain">提示 permission denied while trying to connect to the Docker daemon socket</span>

##### <span class="md-plain">当前用户尚未加入 docker 组，执行 </span><span class="md-pair-s" spellcheck="false">`newgrp docker`</span><span class="md-plain">，或注销后重新登录。</span>

### <span class="md-plain">脚本停留在「检测到其他 apt 进程正在运行」</span>

##### <span class="md-plain">系统正在执行自动更新，dpkg 锁被占用。等待其结束后重新执行脚本即可，重复执行不会破坏已安装的环境。</span>

### <span class="md-plain">测试镜像拉取失败</span>

##### <span class="md-plain">不影响 Docker 本身，执行 </span><span class="md-pair-s" spellcheck="false">`docker version`</span><span class="md-plain"> 确认服务正常，网络恢复后单独执行 </span><span class="md-pair-s" spellcheck="false">`docker pull`</span><span class="md-plain"> 即可。</span>

## <span class="md-plain">镜像来源</span>

##### <span class="md-plain">Docker 引擎装好之后，命令、compose 文件、数据卷、网络的使用方式与其他系统完全一致，唯一的区别在镜像本身。龙芯为 loong64 架构，请使用龙芯官方仓库 </span><span class="md-pair-s" spellcheck="false">`lcr.loongnix.cn`</span><span class="md-plain"> 提供的镜像：</span>

- ##### <span class="md-pair-s" spellcheck="false">`lcr.loongnix.cn/library/alpine:3.24`</span>
- ##### <span class="md-pair-s" spellcheck="false">`lcr.loongnix.cn/library/debian:sid-slim`</span>
- ##### <span class="md-pair-s" spellcheck="false">`lcr.loongnix.cn/library/busybox:latest`</span>
- ##### <span class="md-pair-s" spellcheck="false">`lcr.loongnix.cn/library/nginx:1.28.0`</span>
- ##### <span class="md-pair-s" spellcheck="false">`lcr.loongnix.cn/library/redis:7.4.1`</span>
- ##### <span class="md-pair-s" spellcheck="false">`lcr.loongnix.cn/library/mysql:8.4.6-lns23.1`</span>
- ##### <span class="md-pair-s" spellcheck="false">`lcr.loongnix.cn/library/postgres:17-sid`</span>
- ##### <span class="md-pair-s" spellcheck="false">`lcr.loongnix.cn/library/python:3.11.7`</span>
- ##### <span class="md-pair-s" spellcheck="false">`lcr.loongnix.cn/library/node:22.15-alpine3.21`</span>

##### <span class="md-plain">拉取时使用完整地址：</span>

```
docker pull lcr.loongnix.cn/library/nginx:1.28.0
```

##### <span class="md-plain">编写 Dockerfile 时，将 </span><span class="md-pair-s" spellcheck="false">`FROM`</span><span class="md-plain"> 指向上述地址：</span>

```
FROM lcr.loongnix.cn/library/python:3.11.7<br></br>WORKDIR /app<br></br>COPY . .<br></br>CMD ["python", "main.py"]
```

##### <span class="md-plain">如需使用短名称，可先打标签：</span>

```
docker tag lcr.loongnix.cn/library/nginx:1.28.0 nginx:1.28.0
```

##### <span class="md-plain">只发布 amd64 镜像的闭源软件无法在龙芯上运行。部署其他项目前，请先确认其是否提供 loong64 版本，可查看镜像仓库页面标注的支持架构，或查阅项目文档。</span>

---

## <span class="md-plain">卸载 Docker</span>

##### <span class="md-plain">脚本安装的软件包包含 </span><span class="md-pair-s" spellcheck="false">`docker.io`</span><span class="md-plain">、</span><span class="md-pair-s" spellcheck="false">`docker-cli`</span><span class="md-plain">、</span><span class="md-pair-s" spellcheck="false">`docker-buildx`</span><span class="md-plain">、</span><span class="md-pair-s" spellcheck="false">`docker-compose`</span><span class="md-plain">、</span><span class="md-pair-s" spellcheck="false">`containerd`</span><span class="md-plain">、</span><span class="md-pair-s" spellcheck="false">`runc`</span><span class="md-plain">、</span><span class="md-pair-s" spellcheck="false">`tini`</span><span class="md-plain">。仅卸载 </span><span class="md-pair-s" spellcheck="false">`docker.io`</span><span class="md-plain"> 会残留其余软件包，</span><span class="md-pair-s" spellcheck="false">`docker`</span><span class="md-plain"> 命令仍然存在，需整组卸载：</span>

```
sudo systemctl stop docker.socket docker.service containerd<br></br>sudo apt-get purge -y 'docker*' 'containerd*' runc tini<br></br>sudo apt-get autoremove -y<br></br>sudo rm -rf /var/lib/docker /var/lib/containerd /etc/docker /usr/local/lib/docker /run/docker /run/docker.sock<br></br>sudo delgroup docker
```

[![Screenshot_2026-10-29_16-37-17.png](https://doc.bee-link.com.cn/uploads/images/gallery/2026-10/scaled-1680-/l9Tk9PZqrCTkK2Ed-screenshot-2026-10-29-16-37-17.png)](https://doc.bee-link.com.cn/uploads/images/gallery/2026-10/l9Tk9PZqrCTkK2Ed-screenshot-2026-10-29-16-37-17.png)

## <span class="md-plain">可选参数</span>

- ##### <span class="md-pair-s" spellcheck="false">`--no-mirror`</span><span class="md-plain">：不配置镜像加速，</span><span class="md-pair-s" spellcheck="false">`daemon.json`</span><span class="md-plain"> 中仅保留日志与 live-restore 设置</span>
- ##### <span class="md-pair-s" spellcheck="false">`--skip-test`</span><span class="md-plain">：跳过测试容器，适用于网络较慢的环境</span>
- ##### <span class="md-pair-s" spellcheck="false">`--user 用户名`</span><span class="md-plain">：指定加入 docker 组的用户，使用 sudo 执行时自动识别</span>
- ##### <span class="md-pair-s" spellcheck="false">`--force`</span><span class="md-plain">：跳过架构校验，不建议添加该参数。</span>
- ##### <span class="md-pair-s" spellcheck="false">`-h`</span><span class="md-plain md-expand">：查看用法</span>