LoongArch64 (loong64) 龙芯架构:从 GitHub 安装 github.com/kubernetes-loong64 编译的 containerd、docker rpm 包

说明

暂未完成所有情况的测试

在 rpm 清单中,暂未添加依赖关系

下方基于 AnolisOS 23.4 最小化安装 进行测试

源码

相关文档

下载 rpm 包

mkdir -p ~/docker
cd ~/docker
curl -LO https://github.com/kubernetes-loong64/moby-loong64/releases/download/release-loong64-docker-v29.5.1%2B1/docker-ce-29.5.1-1.an23.loongarch64.rpm
curl -LO https://github.com/kubernetes-loong64/tini-loong64/releases/download/release-loong64-master%2B1/docker-init-0.19.0-1.an23.loongarch64.rpm
curl -LO https://github.com/kubernetes-loong64/cli-loong64/releases/download/release-loong64-v29.5.1%2B1/docker-ce-cli-29.5.1-1.an23.loongarch64.rpm
curl -LO https://github.com/kubernetes-loong64/runc-loong64/releases/download/release-loong64-v1.4.2%2B1/runc-1.4.2-1.an23.loongarch64.rpm
curl -LO https://github.com/kubernetes-loong64/containerd-loong64/releases/download/release-loong64-v2.3.1%2B1/containerd-2.3.1-1.an23.loongarch64.rpm
curl -LO https://github.com/kubernetes-loong64/compose-loong64/releases/download/release-loong64-v5.2.0%2B1/docker-compose-plugin-5.2.0-1.an23.loongarch64.rpm
curl -LO https://github.com/kubernetes-loong64/buildx-loong64/releases/download/release-loong64-v0.35.0%2B1/docker-buildx-plugin-0.35.0-1.an23.loongarch64.rpm
ls -lah
[root@anolis docker]# ls -lah
total 106M
drwxr-xr-x. 2 root root 4.0K Jun 24 14:43 .
drwxr-xr-x. 4 root root 4.0K Jun 24 14:06 ..
-rw-r--r--. 1 root root  25M Jun 24 14:43 containerd-2.3.1-1.an23.loongarch64.rpm
-rw-r--r--. 1 root root  44M Jun 24 14:43 docker-ce-29.5.1-1.an23.loongarch64.rpm
-rw-r--r--. 1 root root  16M Jun 24 14:43 docker-ce-cli-29.5.1-1.an23.loongarch64.rpm
-rw-r--r--. 1 root root  16M Jun 24 14:43 docker-compose-plugin-5.2.0-1.an23.loongarch64.rpm
-rw-r--r--. 1 root root 290K Jun 24 14:43 docker-init-0.19.0-1.an23.loongarch64.rpm
-rw-r--r--. 1 root root 6.5M Jun 24 14:43 runc-1.4.2-1.an23.loongarch64.rpm
[root@anolis docker]# 

执行安装

yum install -y ~/docker/*.rpm
[root@anolis docker]# yum install -y ~/docker/*.rpm
Last metadata expiration check: 2:22:36 ago on Wed 24 Jun 2026 01:11:08 PM CST.
Dependencies resolved.
====================================================================================================================
 Package                           Architecture            Version                   Repository                Size
====================================================================================================================
Installing:
 containerd                        loongarch64             2.3.1-1.an23              @commandline              24 M
 docker-ce                         loongarch64             29.5.1-1.an23             @commandline              43 M
 docker-ce-cli                     loongarch64             29.5.1-1.an23             @commandline              16 M
 docker-compose-plugin             loongarch64             5.2.0-1.an23              @commandline              15 M
 docker-init                       loongarch64             0.19.0-1.an23             @commandline             290 k
 runc                              loongarch64             1.4.2-1.an23              @commandline             6.4 M

Transaction Summary
====================================================================================================================
Install  6 Packages

Total size: 105 M
Installed size: 319 M
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                            1/1 
  Installing       : runc-1.4.2-1.an23.loongarch64                                                              1/6 
  Installing       : docker-init-0.19.0-1.an23.loongarch64                                                      2/6 
  Installing       : docker-compose-plugin-5.2.0-1.an23.loongarch64                                             3/6 
  Installing       : docker-ce-cli-29.5.1-1.an23.loongarch64                                                    4/6 
  Installing       : docker-ce-29.5.1-1.an23.loongarch64                                                        5/6 
  Running scriptlet: docker-ce-29.5.1-1.an23.loongarch64                                                        5/6 
=== docker-ce installed ===
systemd service file: /usr/lib/systemd/system/docker.service
Install service:
  sudo systemctl daemon-reload
  sudo systemctl enable docker.service
  sudo systemctl start docker.service

  Installing       : containerd-2.3.1-1.an23.loongarch64                                                        6/6 
  Running scriptlet: containerd-2.3.1-1.an23.loongarch64                                                        6/6 
=== containerd installed ===
systemd service file: /usr/lib/systemd/system/containerd.service
Install service:
  sudo systemctl daemon-reload
  sudo systemctl enable containerd.service
  sudo systemctl start containerd.service

  Verifying        : containerd-2.3.1-1.an23.loongarch64                                                        1/6 
  Verifying        : docker-ce-29.5.1-1.an23.loongarch64                                                        2/6 
  Verifying        : docker-ce-cli-29.5.1-1.an23.loongarch64                                                    3/6 
  Verifying        : docker-compose-plugin-5.2.0-1.an23.loongarch64                                             4/6 
  Verifying        : docker-init-0.19.0-1.an23.loongarch64                                                      5/6 
  Verifying        : runc-1.4.2-1.an23.loongarch64                                                              6/6 

Installed:
  containerd-2.3.1-1.an23.loongarch64                   docker-ce-29.5.1-1.an23.loongarch64                         
  docker-ce-cli-29.5.1-1.an23.loongarch64               docker-compose-plugin-5.2.0-1.an23.loongarch64              
  docker-init-0.19.0-1.an23.loongarch64                 runc-1.4.2-1.an23.loongarch64                               

Complete!
[root@anolis docker]#

启动服务

启动 containerd 服务

首先启动 containerd 服务,再启动 docker 服务

sudo systemctl daemon-reload
sudo systemctl enable containerd.service
sudo systemctl start containerd.service
[root@anolis docker]# sudo systemctl daemon-reload
[root@anolis docker]# sudo systemctl enable containerd.service
Created symlink /etc/systemd/system/multi-user.target.wants/containerd.service → /usr/lib/systemd/system/containerd.service.
[root@anolis docker]# sudo systemctl start containerd.service
[root@anolis docker]#

启动 docker 服务

首先启动 containerd 服务,再启动 docker 服务

sudo systemctl daemon-reload
sudo systemctl enable docker.service
sudo systemctl start docker.service
[root@anolis docker]# sudo systemctl daemon-reload
[root@anolis docker]# sudo systemctl enable docker.service
Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /usr/lib/systemd/system/docker.service.
[root@anolis docker]# sudo systemctl start docker.service
[root@anolis docker]#

测试服务

systemctl status containerd.service -l --no-pager
systemctl status docker.service -l --no-pager
docker ps
docker images
docker info
[root@anolis docker]# docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
[root@anolis docker]# docker images
                                                                                                                          i Info →   U  In Use
IMAGE   ID             DISK USAGE   CONTENT SIZE   EXTRA
[root@anolis docker]# docker info
Client:
 Version:    29.5.1.m
 Context:    default
 Debug Mode: false
 Plugins:
  compose: Docker Compose (Docker Inc.)
    Version:  v5.2.0
    Path:     /usr/libexec/docker/cli-plugins/docker-compose

Server:
 Containers: 1
  Running: 1
  Paused: 0
  Stopped: 0
 Images: 1
 Server Version: 29.5.1
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Using metacopy: false
  Native Overlay Diff: false
  userxattr: false
 Logging Driver: json-file
 Cgroup Driver: systemd
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog
 CDI spec directories:
  /etc/cdi
  /var/run/cdi
 Swarm: inactive
 Runtimes: runc io.containerd.runc.v2
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 64b425cf570b3b8dd1d4cc46da7c1fce65c6651a
 runc version: v1.4.2-0-gc241c0b
 init version: 369448a
 Security Options:
  seccomp
   Profile: builtin
  cgroupns
 Kernel Version: 6.6.102-5.2.an23.loongarch64
 Operating System: Anolis OS 23.4
 OSType: linux
 Architecture: loongarch64
 CPUs: 24
 Total Memory: 30.65GiB
 Name: anolis-pc
 ID: 6e53c8a2-7695-483b-a9a2-835d315d7ab5
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Experimental: false
 Insecure Registries:
  ::1/128
  127.0.0.0/8
 Live Restore Enabled: false
 Firewall Backend: iptables+firewalld
  EnableUserlandProxy: true
  UserlandProxyPath: /usr/bin/docker-proxy

[root@anolis docker]# 

测试创建容器

# --rm:该参数会在容器停止后自动删除容器
docker run -itd --name debian-14-test --rm lcr.loongnix.cn/debian:14
docker exec -it debian-14-test cat /etc/os-release
docker stop debian-14-test
docker ps -a
[root@anolis docker]# docker exec -it debian-14-test cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux forky/sid"
NAME="Debian GNU/Linux"
VERSION_CODENAME=forky
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
[root@anolis docker]# docker stop debian-14-test 
debian-14-test
[root@anolis docker]# docker ps -a
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
[root@anolis docker]#