陈老师:1415968548 郑老师:2735197625 乐老师:354331153
客服热线:
19941464235 / 19906632509 / 19906733890(微信同号)

客服微信

【麒麟】如何在kylin(v10版本)中使用docker运行git代码

作者:云贝学院
发布时间:2024-07-22 14:17
浏览量:126

本文为云贝教育 刘老师 原创,请尊重知识产权,转发请注明出处,不接受任何抄袭、演绎和未经注明出处的转载。


引言

Docker 是一个开源的应用容器引擎,能够让开发者将应用程序及其依赖打包成轻量级、可移植的容器,极大地方便了应用的开发、测试和部署。在麒麟操作系统V10(Kylin OS V10)上安装和使用 Docker,不仅可以享受到容器技术的便利性,还能充分利用麒麟操作系统作为国产自主可控操作系统的优势,确保应用的高效运行和数据安全。本文将详细介绍在麒麟操作系统V10上安装 Docker 的步骤,以及如何运行和管理 Docker 容器。


一、安装docker

以下操作均在root用户下进行


1.1 查看当前操作系统版本


1.2 备份yum包


1.3 下载阿里云yum源配置文件


1.4 清除缓存并更新


1.5 查看可用yum源


1.6 安装软件包并设置存储库


1.7 安装docker

这里选择社区版本(CE版)


1.8 启动服务


1.9 验证服务


输出日志


二、运行git代码

下面是拉取LINUX性能优化案例的代码到本地运行的案例


2.1  获取代码


2.2  构建 Docker 镜像


输出如下

gcc -o app app.c
docker build -t feisky/app:iowait -f Dockerfile .
[+] Building 31.9s (7/7) FINISHED                                                               docker:default
 => [internal] load build definition from Dockerfile                                                      0.0s
 => => transferring dockerfile: 116B                                                                      0.0s
 => [internal] load metadata for docker.io/library/ubuntu:latest                                         16.5s
 => [internal] load .dockerignore                                                                         0.0s
 => => transferring context: 2B                                                                           0.0s
 => [internal] load build context                                                                         0.0s
 => => transferring context: 22.87kB                                                                      0.0s
 => [1/2] FROM docker.io/library/ubuntu:latest@sha256:626ffe58f6e7566e00254b638eb7e0f3b11d4da9675088f47  14.9s
 => => resolve docker.io/library/ubuntu:latest@sha256:626ffe58f6e7566e00254b638eb7e0f3b11d4da9675088f478  0.0s
 => => sha256:7b1a6ab2e44dbac178598dabe7cff59bd67233dba0b27e4fbd1f9d4b3c877a54 28.57MB / 28.57MB         12.8s
 => => sha256:626ffe58f6e7566e00254b638eb7e0f3b11d4da9675088f4781a50ae288f3322 1.42kB / 1.42kB            0.0s
 => => sha256:7cc0576c7c0ec2384de5cbf245f41567e922aab1b075f3e8ad565f508032df17 529B / 529B                0.0s
 => => sha256:ba6acccedd2923aee4c2acc6a23780b14ed4b8a5fa4e14e252a23b846df9b6c1 1.46kB / 1.46kB            0.0s
 => => extracting sha256:7b1a6ab2e44dbac178598dabe7cff59bd67233dba0b27e4fbd1f9d4b3c877a54                 1.9s
 => [2/2] ADD app /app                                                                                    0.3s
 => exporting to image                                                                                    0.1s
 => => exporting layers                                                                                   0.1s
 => => writing image sha256:169bda677823b435b699b97aff6cb8b4893934fe5eed1ef9a9773335aeddcd32              0.0s
 => => naming to docker.io/feisky/app:iowait                                                              0.0s
gcc -o app app-fix1.c
docker build -t feisky/app:iowait-fix1 -f Dockerfile .
[+] Building 15.4s (7/7) FINISHED                                                               docker:default
 => [internal] load build definition from Dockerfile                                                      0.0s
 => => transferring dockerfile: 116B                                                                      0.0s
 => [internal] load metadata for docker.io/library/ubuntu:latest                                         15.2s
 => [internal] load .dockerignore                                                                         0.0s
 => => transferring context: 2B                                                                           0.0s
 => [internal] load build context                                                                         0.0s
 => => transferring context: 22.87kB                                                                      0.0s
 => CACHED [1/2] FROM docker.io/library/ubuntu:latest@sha256:626ffe58f6e7566e00254b638eb7e0f3b11d4da9675  0.0s
 => [2/2] ADD app /app                                                                                    0.1s
 => exporting to image                                                                                    0.1s
 => => exporting layers                                                                                   0.0s
 => => writing image sha256:861332fb8b0a0a578f904c3a7658b1c8d184979b79406ca8e398a5459f7682bb              0.0s
 => => naming to docker.io/feisky/app:iowait-fix1                                                         0.0s
gcc -o app app-fix2.c
docker build -t feisky/app:iowait-fix2 -f Dockerfile .
[+] Building 15.5s (7/7) FINISHED                                                               docker:default
 => [internal] load build definition from Dockerfile                                                      0.0s
 => => transferring dockerfile: 116B                                                                      0.0s
 => [internal] load metadata for docker.io/library/ubuntu:latest                                         15.2s
 => [internal] load .dockerignore                                                                         0.0s
 => => transferring context: 2B                                                                           0.0s
 => [internal] load build context                                                                         0.0s
 => => transferring context: 22.92kB                                                                      0.0s
 => CACHED [1/2] FROM docker.io/library/ubuntu:latest@sha256:626ffe58f6e7566e00254b638eb7e0f3b11d4da9675  0.0s
 => [2/2] ADD app /app                                                                                    0.1s
 => exporting to image                                                                                    0.1s
 => => exporting layers                                                                                   0.1s
 => => writing image sha256:14ba4b3520460194644d7998aa51e4a31ec3e758a30817bfe89ba7e9f2100ee8              0.0s
 => => naming to docker.io/feisky/app:iowait-fix2 


2.3 查看当前镜像


输出如下


2.4  运行应用


输出如下


2.5 确认进程


2.6 关闭应用


输出如下


当然还有更简单的方法,不需要拉到本地直接运行


三、故障排错

3.1 docker run报OCI运行错误


原因:未安装RunC,它 是一个轻量级的工具,它是用来运行容器的

解决方案:安装 runC


3.2 docker run报IO错误


原因:获取镜像效率太低

解决方案:配置镜像加速

配置镜像加速网址:https://cr.console.aliyun.com/cn-beijing/instances/mirrors


3.3 git clone报Empty reply from server


原因:代理设置出错

解决方案:重置代理


结语

在麒麟操作系统V10上安装和使用 Docker,不仅可以享受到容器技术带来的便利,还能充分利用麒麟操作系统作为国产操作系统在安全性、可控性和生态兼容性方面的优势。通过上述指南,你可以顺利地在麒麟操作系统V10环境中部署和管理 Docker 应用程序,为你的开发和运维工作带来更高的效率和安全性。




想了解更多 麒麟 相关的学习资料(技术文章和视频),可以微信公众号或B站搜索《云贝教育》,免费获取。

想了解更多 麒麟 相关的学习资料(技术文章和视频),可以微信公众号或B站搜索《云贝教育》,免费获取。

想了解更多 麒麟 相关的学习资料(技术文章和视频),可以微信公众号或B站搜索《云贝教育》,免费获取。