【鲲鹏服务器麒麟系统arm架构部署docker】

一、背景

客户更换了服务器,鲲鹏服务器,安装的麒麟系统,需要重新部署,由于使用的docker部署服务,所以需要在鲲鹏服务器上部署docker

二、麒麟系统arm架构部署docker

使用 Docker 官方静态二进制包部署在云服务器上成功,并且在客户服务器上也部署成功。

1.检查环境

  • 查看系统信息:Kylin V10
bash 复制代码
cat /etc/os-release
bash 复制代码
NAME="Kylin Linux Advanced Server"
VERSION="V10 (Halberd)"
ID="kylin"
VERSION_ID="V10"
PRETTY_NAME="Kylin Linux Advanced Server V10 (Halberd)"
ANSI_COLOR="0;31"
字段 含义
NAME 系统名称(Kylin Linux Advanced Server)
VERSION 系统版本号(V10 Halberd,Halberd 是"戟"版)
ID 系统标识(kylin)
VERSION_ID 简化版号(V10)
PRETTY_NAME 完整可读的系统名称
ANSI_COLOR 控制台显示颜色(可忽略)
  • 查看cpu架构:鲲鹏ARM 64位架构
bash 复制代码
uname -m
bash 复制代码
aarch64
输出结果 含义
x86_64 说明是 Intel / AMD 64位架构
aarch64 说明是 ARM 64位架构(鲲鹏、飞腾、海光等)
armv7l 说明是 ARM 32位架构

2. 部署docker

1. 搭建测试环境:

由于客户服务器是离线,且自己不在现场,需要远程部署,并且好多镜像只有在arm架构上才能下载对应架构的镜像(比如在电脑windows(amd)上下载的镜像是amd的),所以为了快速部署,在阿里云上购买了服务器,方便测试部署,采用按量付费。

  • 选择arm架构
  • 银河麒麟高级服务器操作系统(ARM版)V10

2. 使用 Docker 官方静态二进制包部署,适配不同架构(推荐)

1. 下载二进制包:(下载链接)

拷贝到服务器上,解压

bash 复制代码
tar xzvf docker-24.0.2.tgz
2. 安装docker
  • 将docker目录下所有文件拷贝到/usr/local/bin/下面
bash 复制代码
cp docker/* /usr/local/bin/
  • 添加docker.service
bash 复制代码
vim /usr/lib/systemd/system/docker.service

将下面的内容复制到刚创建的docker.service文件中

注意:/usr/local/bin/dockerd是docker安装目录,有的拷贝到/usr/bin下面就写/usr/bin目录

bash 复制代码
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/local/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
  • 为docker.service赋权限
bash 复制代码
# 为docker.service添加执行权限
chmod +x /usr/lib/systemd/system/docker.service
  • 重新加载配置
bash 复制代码
# 重新加载系统控制器
systemctl daemon-reload
  • 配置 Docker 服务并开机自启
bash 复制代码
systemctl enable docker
systemctl start docker
systemctl status docker
  • 验证docker安装:
bash 复制代码
docker -v
3. 按需求是否安装docker-compose 下载链接
  • 拷贝docker-compose到/usr/local/bin/
bash 复制代码
mv docker-compose-linux-aarch64 /usr/local/bin/docker-compose
  • 给于执行权限
bash 复制代码
chmod +x /usr/local/bin/docker-compose

3. 配置docker镜像加速

1. 阿里云加速,请访问链接,比较慢,大的镜像拉不下来添加链接描述

2. 阿里云不好用就访问这个连接大佬写的很细,镜像基本都可以拉取到


三. 其它部署方式

(鲲鹏服务器和麒麟系统上没有部署成功。但是这个可以用在其他服务器上部署,我自己记录保留一下存档,后面好复用)

1. Kylin V10(基于 centos)安装 Docker

注:判断是否有rpm或者:which rpm

  • 下载了arm架构对应的rpm(下载链接)
    • containerd.io-1.6.9-3.1.el8.aarch64.rpm
    • docker-ce-26.1.3-1.el8.aarch64.rpm
    • docker-ce-cli-26.1.3-1.el8.aarch64.rpm
  • 安装 Docker RPM 包
bash 复制代码
cd /tmp/docker_rpm

# 安装顺序:containerd -> docker-ce-cli -> docker-ce
rpm -ivh containerd.io-1.7.28-1.el8.aarch64.rpm
rpm -ivh docker-ce-cli-28.5.2-3.el8.aarch64.rpm
rpm -ivh docker-ce-28.5.2-3.el8.aarch64.rpm

2. Kylin V10(基于 Debian/Ubuntu)安装 Docker(下载链接)

  1. 下载以下 .deb 包(Docker CE + 依赖)
    • containerd.io_1.7.28-2~debian.11~bullseye_arm64.deb
    • docker-ce_28.5.2-1~debian.11~bullseye_arm64.deb
    • docker-ce-cli_28.5.2-1~debian.11~bullseye_arm64.deb
  2. 用 dpkg -i package.deb 安装
bash 复制代码
dpkg -i containerd.io_1.7.3-1_amd64.deb
dpkg -i docker-ce-cli_24.0.2~3-0~debian-buster_amd64.deb
dpkg -i docker-ce_24.0.2~3-0~debian-buster_amd64.deb
  1. 配置 Docker 服务并开机自启
bash 复制代码
systemctl enable docker
systemctl start docker
systemctl status docker
  1. 验证安装
bash 复制代码
docker version
docker info
docker run hello-world

3. 安装 docker-compose(可选)

bash 复制代码
sudo mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose version

总结

使用 Docker 官方静态二进制包部署,适配不同架构,只是部署步骤多一些。

相关推荐
辰海Coding4 小时前
MiniSpring框架学习-完成的 IoC 容器
java·spring boot·学习·架构
189228048615 小时前
NY352固态MT29F32T08GWLBHD6-24QJ:B
大数据·服务器·人工智能·科技·缓存
AI视觉网奇5 小时前
linux 检索库 判断库是否支持
java·linux·服务器
云边云科技_云网融合5 小时前
企业大模型时代的网络架构五层演进:从连接到智能的范式重构
网络·重构·架构
Yunzenn5 小时前
字节最新研究cola-DLM第 01 章:语言生成的三次范式之争 —— 从 RNN 到 AR 到扩散
架构·github
她的男孩5 小时前
从零搭一个企业后台,为什么我把能力拆成 Starter 和 Plugin
java·后端·架构
仙柒4155 小时前
Docker存储原理
运维·docker·容器
啷里格啷5 小时前
第二章 Fast-DDS 整体架构与分层框架
后端·架构
DolphinDB5 小时前
漫长人工,耗费存储?用 BackupRestore 模块一站式解决跨环境数据同步难题
运维·后端·架构
敖正炀5 小时前
DDD + Kubernetes:领域服务到微服务的部署映射
架构