A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

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的镜像仓库为基础,那我用自己的系统作为镜像怎么办那?
有使用工具的,有使用镜像模板的等等,可以百度
别人已经解决了这个问题

全文地址请点击:https://blog.csdn.net/shiqiangde ... 195?utm_source=copy

1 个回复

正序浏览
奈斯
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马