docker创建镜像
总共有两种方法: 
1.用别人的镜像创建。 
1.1、先下载一个容器 
命令: docker pull training/sinatra 
1.2、然后用容器启动这个镜像 
命令:docker run -t -i training/sinatra /bin/bash 
1.3、接下来就是给使用中的容器,添加自己需要的工具等,来组装自己的运行环境。 
1.4、将上一步组装好的环境copy一份镜像。 
命令: 
docker commit -m “Added json gem” -a “KateSmith” \ 
0b2616b0e5a8 ouruser/sinatra:v2 
说明:此处命令和git的命令svn的命令有些类似。 docker commit 是提交的意思,类似告诉svn服务器我要生成一个新的版本。 
-m 就是添加注释,-a是作者。 
“\” 后面跟的是 1.2的容器环境id 要生成的镜像的名称 
容器的id:就是你每次输入命令行@后面的字符 
例如:root@0b2616b0e5a8 
镜像名称:hub的名称/镜像名称:tag 
1.5、docker images命令查看自己创建的镜像。 
1.6、使用新建立的镜像 
命令:docker run -t -i 要生成的镜像的名称 /bin/bash

2.使用Dockerfile 
两种创建方法相比,就类似以前的Java项目开发,在没有使用maven以前,所以的东西都是现在好了放到项目中,如果有新的开发人员进来,需要把项目的jar文件都拷贝给他。但是使用maven以后就是不需要了。Dockerfile就类似这样的道理 
2.1、创建镜像所在的文件夹和Dockerfile文件 
命令: 
1、mkdir sinatra 
2、cd sinatra 
3、touch Dockerfile 
2.2、在Dockerfile文件中写入指令,没一条指令都会更新镜像的信息例如: 
# This is a comment 
FROM ubuntu:14.04 
MAINTAINER Kate Smith ksmith@example.com 
RUN apt-get update && apt-get install -y ruby ruby-dev 
RUN gem install sinatra 
格式说明: 
每行命令都是以 INSTRUCTION statement 形式,就是命令+ 清单的模式。命令要大写,“#”是注解。 
FROM 命令是告诉docker 我们的镜像什么。 
MAINTAINER 是描述 镜像的创建人。 
RUN 命令是在镜像内部执行。就是说他后面的命令应该是针对镜像可以运行的命令。 
2.3、创建镜像 
命令:docker build -t ouruser/sinatra:v2 . 
docker build 是docker创建镜像的命令 
-t 是标识新建的镜像属于 ouruser的 
sinatra是仓库的名称 
:v2 是tag 
“.”是用来指明 我们的使用的Dockerfile文件当前目录的 
2.4、创建完成后,从镜像创建容器 
docker run -t -i ouruser/sinatra:v2 /bin/bash

到此两种创建镜像的方式就完毕了。

问题: 以上两种方式都是以Docker的镜像仓库为基础,那我用自己的系统作为镜像怎么办那?

有使用工具的,有使用镜像模板的等等,可以百度 
别人已经解决了这个问题

怎样用Docker创建我们自己的镜像相关推荐

  1. Docker创建一个java程序镜像

    Docker创建一个java程序镜像 什么是Dockerfile 指令及其说明 个人镜像创建流程 Dockerfile文件创建 使用docker build命令构建镜像 运行镜像 附文件目录结构 什么 ...

  2. docker commit (从容器创建一个新的镜像)

    从容器创建一个新的镜像 docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]] -a :提交的镜像作者:-c :使用Dockerfile指令来创建镜像 ...

  3. 一机玩转docker之十:创建及使用ssh镜像

    目标 创建ssh镜像,并使用ssh镜像创建容器以便上传文件. 一.以centos镜像为基础构建ssh的镜像 mkdir -p /data/build/ssh/ #创建镜像构建目录 cd /data/b ...

  4. Docker 创建镜像

    创建镜像有很多方法,用户可以从 Docker Hub 获取已有镜像并更新,也可以利用本地文件系统创建一个. 修改已有镜像 先使用下载的镜像启动容器. $ sudo docker run -t -i t ...

  5. 使用 docker 创建自己的镜像

    docker run 命令 镜像(image):An image is a filesystem and parameters to use at runtime. It doesn't have s ...

  6. docker go get问题_创建优化的Go镜像文件以及踩过的坑

    点击上方蓝色"Go语言中文网"关注我们,领全套Go资料,每天学习 Go 语言 本文作者:倚天码农 原文链接:https://segmentfault.com/a/119000002 ...

  7. docker创建镜像之Dockerfile

    使用命令 docker build , 从零开始来创建一个新的镜像. Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明. 参考:Docker 镜像使用 ...

  8. docker创建带有ssh的centos镜像

    一.拉取镜像 docker pull centos 二.生成容器 docker run -itd --name=centos_ssh --privileged=true centos /usr/sbi ...

  9. 一文搞定docker创建私有镜像仓库(配置启动http和https方式私有仓库服务,查询、删除私有仓库镜像)

    docker除了使用公共镜像仓库之外,也可以创建私有镜像仓库.对于内部开发.测试.部署环境来说,是很有必要的.        如何创建私有镜像仓库服务呢?当然是以容器的方式啦! 1.拉取官方regis ...

最新文章

  1. ASP.NET 配置log4net日志功能
  2. # POJ-1979(BFS)
  3. Linux从零开始(一、安装系统)
  4. 学习笔记(21):Python网络编程并发编程-队列的使用
  5. c#爬虫-1688官网自动登录
  6. 多媒体技术复习汇总 收藏
  7. python判断文件是否打开_python如何判断一个文件是否处于打开状态?
  8. angular4更改表单中显示的值_关于angular4中FormBuilder重新赋值时发生的问题
  9. nGrinder Loadrunner vs nGrinder
  10. wordpress常用插件
  11. mysql索引失效的常见原因
  12. 华为一员工猝死出租屋 警方初步排除他杀
  13. 2、异常值(outliers)检测:业务法、Z-score、3σ准则、箱线图
  14. 易语言MYSQL记账工具_易语言做记账软件
  15. 二十五、Java中的网络编程
  16. strstr函数和strtok函数的使用
  17. 阿里云 vs Azure-安全
  18. 电商让客户等待的话术
  19. 查看手机wifi密码
  20. Qt开发技术:Qt富文本(一)富文本介绍、文档结构

热门文章

  1. Linux下硬盘分区的最佳方案(转)
  2. 全面升级2022版Zoomla逐浪CMS官网全新上线激情内测体验进行中
  3. 请问开SMT钢网需要什么文件?
  4. NFS服务器的搭建(文件共享)
  5. seaborn添加数据标签_常见Seaborn图的数据标签快速指南
  6. 如何用手机连接没有wifi的打印机
  7. java 设计模式之Bridge
  8. 最新:(C4DtoA R22阿诺德渲染器)SolidAngle Cinema 4D To Arnold for mac
  9. 查询电脑手机出口公网IP地址(含IPv4和IPv6)
  10. python 录音 转码_python 音乐格式转换