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

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

  hot3.png

在之前的基础上,我们可以使用Dockerfile快速地构建镜像,这里会用到之前构建好的tomcat-test:v1镜像,当然我们这里只是demo,最好安装好各种开发环境需要用到的软件,使用的时候只要起一个容器就开始了,不同服务器或者不同容器的开发环境都是一样的。

接下来开始使用Dockerfile构建镜像:

1. 建目录:

    mkdir tomcat-docker ; cd tomcat-docker;

2. 创建两个重要的文件(Dockerfile告诉docker怎么制作一个镜像, start.sh是启动脚本):

    touch Dockerfile start.sh

3. 将需要启动的services写入start.sh,然后在最后加上"/bin/bash".

安装的服务多的话(以下的services都是yum安装的):

#!/bin/bashservice nginx startservice mysql startservice mongodb startservice redis-server start/bin/bash                   # 最后这行千万不要漏

只启动tomcat的脚本(.tar.gz解压的,用yum安装的话,使用service tomcat start ):

#!/bin/bash/opt/soft/tomcat/apache-tomcat-8.5.24/bin/startup.sh/bin/bash                   # 最后这行千万不要漏

4. 编写Dockerfile文件

FROM tomcat-test:v2ADD start.sh /usr/local/start.shRUN chmod +x /usr/local/start.shEXPOSE 8080CMD ["/usr/local/start.sh"]

5. 制作新的镜像

    docker build -t tomcat-test:v2 . 

    也可以指定路径:

        docker build -t tomcat-test:v2 /opt/soft/tomcat-docker/Dockerfile .

    执行build会有Step1,Step2等等一些步骤,稍等一会,如果看到Successfully built xxxxxx那就证明创建镜像成功了。

6. 本地镜像列表就会出现了docker images

7. 可以创建并跑起容器,通过镜像中添加的脚本运行tomcat

    docker run -d -p 8080:8080 tomcat-test:v1 /usr/local/start.sh

    使用attach进入容器,确认应该运行的程序是否正常运行,容器内使用ps aux查看运行中的程序;(这里是访问localhost:8080是否可以)。

8. docker导出成tar包,在不同机器之间拷贝、导入然后开发了;

 

参考:

http://www.cnblogs.com/llhf/p/5149378.html

http://www.jianshu.com/p/369e75f6303b

详细的Dockerfile指令介绍,也可以看《Spring Cloud与Docker微服务架构实战》:

http://www.jianshu.com/p/cbce69c7a52f

 

转载于:https://my.oschina.net/itommy/blog/1589194

你可能感兴趣的文章
注意!神秘DNS漏洞现身 可致服务器奔溃
查看>>
Win8 安装msi文件遇到错误 code=2502/2503
查看>>
爬虫:保存linux网页教程为pdf格式
查看>>
mysql limit 优化
查看>>
无需密码通过ssh执行rsync来同步文件
查看>>
limit分页优化
查看>>
CodeIgniter源代码阅读(一)index.php
查看>>
DRBD双向同步
查看>>
UITableView--单组数据显示(纯手动代码实现)
查看>>
RxJava2的错误处理方案
查看>>
Lua 函数 类 Table --学习笔记
查看>>
史上最详细的Android系统SystemUI 启动过程详细解析
查看>>
virtual and cloud computer
查看>>
jquery获取选中select的文本,值等
查看>>
route更改网卡数据流向
查看>>
Arthas(阿尔萨斯)是阿里巴巴开源的 Java 诊断工具
查看>>
iOS开发拓展篇—静态库(转载自文顶顶的博客)
查看>>
Hadoop 2.8.5的job提交过程源码解析
查看>>
Chrome的功能使用
查看>>
软件-URL地址设计
查看>>