博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
手动构建镜像
阅读量:4566 次
发布时间:2019-06-08

本文共 1857 字,大约阅读时间需要 6 分钟。

本节内容:

  • 创建docker镜像的方法
  • 手动构建镜像

 

一、创建docker镜像的方法

  • 使用"docker commit"命令
  • 使用"docker build"命令+"Dockerfile"文件

不推荐使用docker commit命令,而应该使用更灵活、更强大的dockerfile来构建docker镜像。

本篇文章先介绍docker commit来构建镜像。

 

二、手动构建镜像

一般来说,我们并不是真正从0开始构建镜像,而是基于一个已经存在的镜像,比如centos,然后进行一些安装和配置,构建自己新的镜像。

【示例】:手动构建Nginx镜像。

[root@node1 ~]# docker pull centos[root@node1 ~]# docker run -it --name mynginx centos [root@eadfe0c0903d /]# rpm -ivh http://mirrors.aliyun.com/epel/epel-release-latest-7.noarch.rpm[root@eadfe0c0903d /]# yum install nginx -y

安装完成后,我们需要将nginx程序设置为前台运行模式,这样容器启动后nginx进程会一直在前台运行而不会退出。因为如果启动容器时的进程退出,容器也就结束了。

[root@eadfe0c0903d /]# vi /etc/nginx/nginx.confdaemon off;

[root@eadfe0c0903d /]# exitexit

 

基于上面的容器制作一个镜像:

[root@node1 ~]# docker ps -aCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                     PORTS                NAMESeadfe0c0903d        centos              "/bin/bash"              12 minutes ago      Exited (0) 2 minutes ago                        mynginx[root@node1 ~]# docker commit -m "nginx test mirror" eadfe0c0903d jkzhao/mynginx:v1

 

基于这个镜像启动容器:

[root@node1 ~]# docker imagesREPOSITORY                              TAG                 IMAGE ID            CREATED             SIZEjkzhao/mynginx                          v1                  bdf7d4fda6fb        4 minutes ago       381.6 MBdocker.io/centos                        latest              328edcd84f1b        2 weeks ago         192.5 MBregistry.docker-cn.com/library/centos   latest              328edcd84f1b        2 weeks ago         192.5 MBdocker.io/nginx                         latest              b8efb18f159b        3 weeks ago         107.5 MB[root@node1 ~]# docker run -d -p 82:80 jkzhao/mynginx:v1 nginx

【注意】:

  1. 必须加tag v1,否则会去仓库中找latest标签的镜像;
  2. 最后 nginx 是命令,容器启动时运行的命令,我这里是yum安装,不是yum安装的要写绝对路径。

 

转载于:https://www.cnblogs.com/zhaojiankai/p/7753470.html

你可能感兴趣的文章
原子变量的性能问题
查看>>
Sybase PowerDesigner 15.0 完美版+特别文件
查看>>
快速傅立叶之二
查看>>
cetos 6.3 安装 apache+mysql+php
查看>>
js编写简单的贪吃蛇游戏
查看>>
2018/12/01 一个64位操作系统的实现 第四章 导入kernel.bin(4)
查看>>
如何在windows xp professional安装iis的解决方法
查看>>
抽象类和接口
查看>>
使用ASP.NET Atlas AutoComplete Behavior或AutoComplete Extender实现自动完成功能(下)
查看>>
golang 常见疑惑总结
查看>>
8大你不得不知的Android调试工具
查看>>
pc端元素拖拽
查看>>
Sublime Text3使用Package Control 报错There Are No Packages Available For Installation
查看>>
判断连通图是否有环(并查集)
查看>>
汽车之家面试题2016
查看>>
POJ-数据结构-优先队列模板
查看>>
【HAOI2006】旅行(并查集暴力)
查看>>
css实现文本超出部分省略号显示
查看>>
留言板
查看>>
vue-router组件状态刷新消失的问题
查看>>