申威平台docker镜像使用方法
确认docker hub申威镜像仓库
仓库地址:Docker Hub
补充:若想使用docker hub仓库,确认宿主机可以上外网。
确认本机docker环境
说明:中标麒麟服务器操作系统可提供docker18.06.3.ce和docker 17.06.2两个版本,根据所需安装好docker后,这里我们以docker18.06.3 ce版为例,通过如下命令查看docker版本,确认docker安装成功,命令如下:
[root@host157~]# docker -v
Docker version 18.06.3-ce, build d7080c17a580919f5340a15a8e5e013133089680
确认docker环境安装成功后,执行如下命令,启动docker服务:
[root@host157~]# systemctl start docker
设置docker服务为开机启动,执行如下命令:
[root@host157~]#systemctl enable docker
下载base镜像
- 方式一:使用docker hub上的base镜像
[root@host157~]docker pull leechm/neokylin-sw:v10-min
2. 方式二:本地导入
厂商提供镜像包xxx.tar,得到镜像的压缩包xxx.tar
[root@host157~]docker load -i xxx.tar
3. 查看本机镜像
[root@host157~]# docker images | grep neokylin
REPOSITORY TAG IMAGE ID CREATED SIZE
leechm/neokylin-sw v10-min 23a6bfcc5831 7 weeks ago 485MB
注意:通过docker info命令查看Docker Root Dir,可以看到docker镜像存储的目录,默认为/var/lib/docker
制作服务镜像
这里我们以一个nginx服务为例
进入容器里面制作
[root@host157 ~]# docker run -it leechm/neokylin-sw:v10-min bash
[root@60097923e6b3 /]# yum install openssh nginx -y
[root@60097923e6b3 /]# cat nginx_start.sh
#!/bin/bash
/usr/sbin/sshd -D &
/usr/sbin/nginx -g 'daemon off;'
[root@60097923e6b3 /]# chmod +x nginx_start.sh
[root@60097923e6b3 /]# bash nginx_start.sh
Could not load host key: /etc/ssh/ssh_host_rsa_key
Could not load host key: /etc/ssh/ssh_host_ecdsa_key
Could not load host key: /etc/ssh/ssh_host_ed25519_key
sshd: no hostkeys available -- exiting.
nginx: [warn] could not build optimal types_hash, you should increase either types_hash_max_size: 2048 or types_hash_bucket_size: 64; ignoring types_hash_bucket_size
另开终端测试nginx服务,截图步骤分别为:
docker ps得到容器ID,通过容器ID得到容器ip,访问ip即可访问nginx服务
(1)打包nginx镜像
上面测试成功之后,通过容器ID打包nginx容器为nginx镜像。
[root@host157 ~]# docker commit 60097923e6b3 nginx:v1.0
sha256:1936bfd28b4c3a2df3bffd9db73c49ce0f4cda36ebb4e292a901745d2aefce95
[root@host157 ~]# docker images |grep nginx
nginx v1.0 1936bfd28b4c 8 seconds ago 542MB
注意:不建议通过commit生成镜像,这样就会产生父子镜像,若想删除镜像,得先删除子镜像,然后才能删除父镜像。
(2)运行nginx镜像
[root@host157 ~]# docker run -d -p 8080:80 nginx:v1.0 /nginx_start.sh
9d0f1f9ad6f0a6d609651b086e312eac7ce25cc3d1fa88fcd38bbf2335101254
[root@host157 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9d0f1f9ad6f0 nginx:v1.0 "/nginx_start.sh" 3 seconds ago Up 2 seconds 0.0.0.0:8080->80/tcp lucid_euler
通过浏览器访问nginx服务,测试8080端口
通过dockerfile
Dockerfile详细指令教程参考:Docker Dockerfile | 菜鸟教程
[root@host157 dockerfile]# ls
Dockerfile nginx_start.sh
[root@host157 dockerfile]# cat Dockerfile
FROM leechm/neokylin-sw:v10-min
RUN yum install openssh nginx -y
COPY nginx_start.sh /
CMD ["/nginx_start.sh"]
[root@host157 dockerfile]#
[root@host157 dockerfile]# docker build -t nginx:v2.0 .
[root@host157 dockerfile]# docker run -d -p 8081:80 nginx:v2.0
33c2cf57ce543afa77d01eb038829429dfa384467119695129597b2903823a5a
[root@host157 dockerfile]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
33c2cf57ce54 nginx:v2.0 "/nginx_start.sh" 5 seconds ago Up 3 seconds 0.0.0.0:8081->80/tcp dreamy_northcutt
9d0f1f9ad6f0 nginx:v1.0 "/nginx_start.sh" 11 minutes ago Up 11 minutes 0.0.0.0:8080->80/tcp lucid_euler
测试8081端口
容器里面访问本地仓库
本地仓库如何搭建,简单说明一下
所有的包下载到本地的一个目录下,然后使用createrepo_c命令即可
这里同样以nginx为例,具体看如下图
通过启动容器挂载宿主机仓库目录到容器里面实现仓库数据共享
[root@host157 ~]# docker run -it -v /root/repo:/root/repo leechm/neokylin-sw:v10-min bash
修改repo地址
[root@1143eb63b30f /]# cat /etc/yum.repos.d/neokylin.repo
[SWKY10-local]
name=SWKY10-3-local
baseurl=file:///root/repo
enabled=1
priority=1
gpgcheck=0
skip_if_unavailable = 1
keepcache = 0
[root@1143eb63b30f /]#yum install nginx
申威平台docker镜像使用方法相关推荐
- 构建多平台Docker镜像
利用 Docker 19.03 以上版本引入的插件 buildx[4],可以很轻松地构建多平台 Docker 镜像.buildx 是 docker build ... 命令的下一代替代品,它利用 Bu ...
- 我的docker随笔20:多平台docker镜像下载
dockerhub上有很多官方的镜像,支持多平台.本文进行简单介绍. 下载 以 busybox 为例,官方镜像地址为: https://hub.docker.com/_/busybox?tab=tag ...
- 【工作向】docker镜像构建方法与命令
序言 docker镜像制作,学习记录 1. docker镜像制作的常见方法 1.1 docker commit基于已有容器构建镜像(手工) 这种方法将已有容器存为新的镜像,但是不建议使用使用这种方式, ...
- 申威 linux内核,一种申威防火墙快速移植高版本linux内核的方法与流程
技术特征: 1.一种申威防火墙快速移植高版本linux内核的方法,其特征在于,包括以下步骤: s1:预先制作生成内存根文件系统的压缩文件: 所述步骤s1包括以下步骤: s11:通过编译busybox制 ...
- Docker学习二:Docker镜像与容器
前言 本次学习来自于datawhale组队学习: 教程地址为: https://github.com/datawhalechina/team-learning-program/tree/master/ ...
- Chapter 2 Docker镜像与容器
Docker镜像 获取镜像 获取镜像 之前提到过,Docker Hub 上有大量的高质量的镜像可以用,这里我们就说一下怎么获取这些镜像. 从 Docker 镜像仓库获取镜像的命令是 docker pu ...
- docker 镜像重命名_Docker镜像管理(二)
在<Docker镜像管理(一)>中介绍了使用Docker Hub来管理你的Docker镜像,小伙伴们在创建仓库时,细心的同学可能已经发现再次创建private类型的仓库时,不能创建了,如下 ...
- 系统制成docker镜像_如何让Docker基础镜像变得更小?
本次实验是基于上一篇在<Centos7系统上制作一个7系的Docker镜像>方法制作,只是这次先在Centos65的系统上实现,并配置本人在减少镜像大小的一些思路和方法: 系统环境: Ce ...
- sudo apt install镜像_将Docker镜像安全扫描步骤添加到CI/CD管道
使用GitlabCI和Trivy 介绍 如今,镜像安全扫描变得越来越流行.这个想法是分析一个Docker镜像并基于CVE数据库寻找漏洞.这样,我们可以在使用镜像之前知道其包含哪些漏洞,因此我们只能在生 ...
最新文章
- mysql查询解析过程_MySQL查询执行过程详解
- python做马尔科夫模型预测法_隐马尔可夫模型的前向算法和后向算法理解与实现(Python)...
- Java 中按文件名称分类,按文件大小分类,按照文件类型分类,按照最后修改时间分类的工具类
- 前端笔记-JavaScript中放json数组要注意的地方(构造灵活的echarts)
- 编译hibernate源代码
- eclipse 安装插件不生效
- 查看dll/exe所依赖的库文件、导出函数、系统位数
- 大麦无线虚拟服务器,解答大麦盒子无线设置的问题
- 量子计算机与仿生论文,有关量子力学的论文
- php文字添加投影,PS如何制作文字投影效果 巧用4种方法给文字添加长投影效果...
- 【day13】【洛谷算法题】-P5713洛谷团队系统-刷题反思集[入门2分支结构]
- ionic给图片加水印
- mysql assertion_Mysql异常崩溃,提示 Failing assertion: extern_len = part_len
- 电商平台中的9种共性推荐策略
- 李宏毅 线性代数 Introduction
- Baltur两级燃气燃烧器BTG 3,6 P 50-60Hz
- 精美个人导航引导页html源码
- python发票二维码条码识别_Python zxing 库解析(条形码二维码识别)
- 100多个经典常用的网站模板大全实例演示和下载
- 人生若只如初见-纳兰性德
热门文章
- WordPress 函数参考
- R调用source出现问题
- 【FLASH存储器系列五】SPI NOR FLASH芯片使用指导之一
- No.047<软考>《(高项)备考大全》【冲刺1】《软考高项考点完全梳理 (1)》
- ZYNQ学习之路11.AXI DMA
- CASS10.1导出界址点成果出错的解决方案:module ‘stfunctions‘ not found:
- JAVA JSP javaweb餐厅点餐系统源码(点餐系统)jsp点餐系统网上订餐系统
- burpsuite模块详解
- mysql相关以及优化类面试总结
- qlineseries绘制动态曲线_Qt绘制动态曲线