news 2026/6/10 15:11:18

麒麟系统离线安装docker和docker-compose

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
麒麟系统离线安装docker和docker-compose

1 准备工作

我安装的操作系统是麒麟V4及V10,aarch64架构

1.1 查看操作系统

// 查看系统版本

uname -a

// 查看系统架构

uname -m

1.2 下载安装包

我使用的docker版本是:docker-20.10.7.tgz,docker-compose版本是v2.17.2,我整理的下载资源:通过网盘分享的文件:docker_20.10.17安装包.rar

链接: https://pan.baidu.com/s/1LbFJDHMTcpblSUAiMpfteQ?pwd=1234 提取码: 1234

选择aarch64架构

图片

选择对应的版本

docker:https://download.docker.com/linux/static/stable/aarch64/

图片

dcoker-compose: https://github.com/docker/compose/releases

找到docker的对应版本,在Assets里选择相应架构的安装包

图片

1.3 准备docker.service文件

docker.service

[Unit]

Description=Docker Application Container Engine

Documentation=https://docs.docker.com

After=network-online.target firewalld.service

Wants=network-online.target

[Service]

Type=notify

# the default is not to use systemd for cgroups because the delegate issues still

# exists and systemd currently does not support the cgroup feature set required

# for containers run by docker

ExecStart=/usr/bin/dockerd

ExecReload=/bin/kill -s HUP $MAINPID

# Having non-zero Limit*s causes performance problems due to accounting overhead

# in the kernel. We recommend using cgroups to do container-local accounting.

LimitNOFILE=infinity

LimitNPROC=infinity

LimitCORE=infinity

# Uncomment TasksMax if your systemd version supports it.

# Only systemd 226 and above support this version.

#TasksMax=infinity

TimeoutStartSec=0

# set delegate yes so that systemd does not reset the cgroups of docker containers

Delegate=yes

# kill only the docker process, not all processes in the cgroup

KillMode=process

# restart the docker process if it exits prematurely

Restart=on-failure

StartLimitBurst=3

StartLimitInterval=60s

[Install]

WantedBy=multi-user.target

3 安装docker和docker-compose

以下命令逐步执行

// 将安装包存放到/opt/docker

scp -r 本地存放目录 用户名@remote_host:/opt/docker

// 进入安装文件存放目录

cd /opt/docker

// 解压 docker 到当前目录

tar -xvf docker-20.10.7.tgz

// 将 docker 文件移动到 /usr/bin 目录下

cp -p docker/* /usr/bin

// 将 docker-compose 文件复制到 /usr/local/bin/ 目录下,并重命名为 docker-compose

cp docker-compose-linux-aarch64 /usr/local/bin/docker-compose

// 设置 docker-compose 文件权限

chmod +x /usr/local/bin/docker-compose

// 将 docker.service 移到 /etc/systemd/system/ 目录

cp docker.service /etc/systemd/system/

// 设置 docker.service 文件权限

chmod +x /etc/systemd/system/docker.service

// 重新加载配置文件

systemctl daemon-reload

// 启动docker

systemctl start docker

// 设置 docker 开机自启

systemctl enable docker.service

// 验证docker是否安装成功

docker -v

// 验证docker-compose是否安装成功

docker-compose -v

4 docker常用命令

4.1 镜像相关命令

创建容器的基础。

命令 说明

docker images 列出本地所有镜像

docker search <镜像名> 从 Docker Hub 搜索镜像

docker pull <镜像名>[:标签] 下载镜像(不指定标签则默认为 latest)

docker rmi <镜像ID或名> 删除一个本地镜像

docker rmi $(docker images -q) 删除所有本地镜像

docker image prune 删除所有未被使用的镜像(悬空镜像)

docker build -t <镜像名>[:标签] . 根据当前目录的 Dockerfile 构建镜像

docker history <镜像名> 查看镜像的构建历史层

docker tag <旧镜像名> <新镜像名> 给镜像打一个新的标签

示例:

docker pull nginx:alpine

docker images

docker rmi 5dbe117b5cf4

docker build -t my-app:v1 .

4.2 容器生命周期管理

用于创建、启动、停止、删除容器。

命令 说明

docker run [选项] <镜像名> 创建并启动一个新容器

docker create <镜像名> 只创建容器,但不启动

docker start <容器ID或名> 启动一个已存在的容器

docker stop <容器ID或名> 优雅地停止一个运行中的容器

docker restart <容器ID或名> 重启容器

docker kill <容器ID或名> 强制立即停止一个容器

docker pause <容器ID或名> 暂停容器内的所有进程

docker unpause <容器ID或名> 恢复容器内被暂停的进程

docker rm <容器ID或名> 删除一个已停止的容器

docker rm $(docker ps -aq) 删除所有已停止的容器

docker container prune 删除所有已停止的容器

docker run 常用选项:

-d:后台运行(守护进程)

-it:交互模式运行(通常与 /bin/bash 结合)

--name:为容器指定一个名称

-p <主机端口>:<容器端口>:映射端口

-v <主机目录>:<容器目录>:挂载数据卷

--rm:容器退出时自动删除(用于测试)

-e:设置环境变量

示例:

# 后台运行一个名为 my-nginx 的容器,并映射端口

docker run -d --name my-nginx -p 80:80 nginx

# 交互式运行一个 Ubuntu 容器,并进入其终端

docker run -it ubuntu /bin/bash

# 运行一个一次性容器,退出后自动删除

docker run --rm -it alpine /bin/sh

4.3 容器信息查看与操作

用于查看和与正在运行的容器交互。

命令 说明

docker ps 列出正在运行的容器

docker ps -a 列出所有容器(包括已停止的)

docker logs <容器ID或名> 查看容器的日志输出

docker logs -f <容器ID或名> 实时跟踪(Follow)容器日志

docker exec -it <容器ID或名> <命令> 在正在运行的容器中执行命令

docker attach <容器ID或名> 连接到正在运行的容器的主进程(不推荐,容易导致容器停止)

docker top <容器ID或名> 查看容器内运行的进程

docker inspect <容器ID或名> 查看容器的底层详细信息(JSON格式)

docker stats 动态显示所有容器的资源使用情况(CPU、内存等)

docker diff <容器ID或名> 检查容器文件系统相对于镜像的更改

示例:

docker ps -a

docker logs -f my-nginx

docker exec -it my-nginx /bin/bash # 进入容器的 Shell

docker inspect my-nginx | grep IPAddress # 查看容器的 IP 地址

4.4 数据卷与网络管理

用于管理容器的持久化数据和网络连接。

命令 说明

docker volume ls 列出所有数据卷

docker volume create <卷名> 创建一个数据卷

docker volume inspect <卷名> 查看数据卷的详细信息

docker volume rm <卷名> 删除一个数据卷

docker volume prune 删除所有未被使用的数据卷

docker network ls 列出所有网络

docker network create <网络名> 创建一个自定义网络

docker network connect <网络名> <容器名> 将容器连接到指定网络

docker network inspect <网络名> 查看网络的详细信息

示例:

# 创建一个数据卷,并运行一个使用该卷的容器

docker volume create my-data

docker run -v my-data:/data --name data-container alpine

# 创建一个自定义的桥接网络,让容器间可以通过容器名通信

docker network create my-app-network

docker run -d --name mysql --network my-app-network mysql

docker run -d --name webapp --network my-app-network my-web-app

4.5 Docker Compose 常用命令

用于管理和运行多容器应用。

命令 说明

docker-compose up 创建并启动所有服务(在前台运行)

docker-compose up -d 创建并启动所有服务(在后台运行)

docker-compose down 停止并删除所有容器、网络

docker-compose stop 停止所有服务,但不删除容器

docker-compose start 启动已存在的服务

docker-compose restart 重启所有服务

docker-compose ps 列出 Compose 文件定义的所有容器

docker-compose logs 查看所有服务的日志

docker-compose logs -f <服务名> 实时跟踪特定服务的日志

docker-compose exec <服务名> <命令> 在指定的服务容器中执行命令

docker-compose build 构建或重新构建服务镜像

docker-compose pull 下载服务镜像

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/9 23:53:29

收藏!30+程序员别再内耗:零基础转大模型,2个月拿2W+offer

还在纠结要不要转行&#xff1f;捧着大模型理论资料却迟迟不动手&#xff1f;作为一名30北漂程序员&#xff0c;我用2个月时间完成零基础转行&#xff0c;成功拿下月薪2W的大模型岗位offer。今天把我的真实经历和避坑指南全分享出来&#xff0c;尤其适合想跨界的程序员和刚入门…

作者头像 李华
网站建设 2026/6/10 13:23:47

Cocos Creator三消游戏开发终极指南:从零到精通

Cocos Creator三消游戏开发终极指南&#xff1a;从零到精通 【免费下载链接】kaixinxiaoxiaole 使用cocos creator 编写的三消游戏 开心消消乐 项目地址: https://gitcode.com/gh_mirrors/ka/kaixinxiaoxiaole 你是不是也想开发一款像开心消消乐一样风靡的三消游戏&…

作者头像 李华
网站建设 2026/6/10 13:20:31

HunyuanVideo重磅开源:重新定义视频生成开发范式

HunyuanVideo重磅开源&#xff1a;重新定义视频生成开发范式 【免费下载链接】HunyuanVideo 项目地址: https://ai.gitcode.com/hf_mirrors/tencent/HunyuanVideo 在文生视频技术快速迭代的当下&#xff0c;开源与闭源模型的性能鸿沟始终是制约行业发展的关键瓶颈。腾讯…

作者头像 李华
网站建设 2026/6/10 13:18:29

如何高效使用TestDisk:从入门到精通的完整操作指南

当硬盘分区意外丢失、重要文件无法访问时&#xff0c;你是否曾感到束手无策&#xff1f;TestDisk作为一款功能强大的开源数据恢复工具&#xff0c;能够帮助你在数据灾难中快速找回丢失的文件&#xff0c;修复受损的文件系统。无论你是技术新手还是IT专业人士&#xff0c;掌握这…

作者头像 李华
网站建设 2026/6/10 13:19:45

如何用Moonlight for Tizen实现智能电视游戏串流:完整操作指南

如何用Moonlight for Tizen实现智能电视游戏串流&#xff1a;完整操作指南 【免费下载链接】moonlight-chrome-tizen A WASM port of Moonlight for Samsung Smart TVs running Tizen OS (5.5 and up) 项目地址: https://gitcode.com/gh_mirrors/mo/moonlight-chrome-tizen …

作者头像 李华
网站建设 2026/6/9 16:09:52

YY/T0681.15 标准与医疗器械注册

一、标准基本信息YY/T 0681.15-2019《无菌医疗器械包装试验方法 第 15 部分&#xff1a;运输容器和系统的性能试验》&#xff0c;是我国医疗器械包装领域的重要行业标准&#xff0c;由国家药品监督管理局于 2019 年 10 月 23 日发布&#xff0c;2020 年 10 月 1 日实施。该标准…

作者头像 李华