docker自动化部署实战

使用daocloud实现docker自动化部署实战

避免重复造轮子,我就不说docker的好处了,百度一大堆,况且你能看到这个文章,说明你也大概了解docker了。当然还是要从安装开始一步步来,本文中使用的是daocloud+coding+docker。daocloud官网coding官网。 自动化流程是:打包应用程序->上传到coding->daocloud检测到更新->自动构建docker镜像->自动部署应用->完毕。

1.将主机加入daocloud管理

首先你的有个linux机器吧,虚拟机也可以,如果都没有widows和mac也可以,能运行docker就行。我这用的是centos,基本类似。

如果操作中有任何问题,请在下方评论,或者加群200909980交流

建议使用阿里云的镜像源

安装docker

yum install docker -y

##查看docker版本,本人是1.12.6,建议越新越好
docker -v

daocloud管理主机

添加地址


2.代码打包

为了演示,就新建一个最简单的web项目,项目名称是docker,新建一个index.html,等会要测试访问结果,然后导出war包。

3.上传到coding

coding新建项目,然后将war包和Dockerfile上传到这个项目下,等会自动化部署要用到。

复制项目的git仓库地址,clone到本地。 进入项目,吧war包复制到这个文件下,编写Dockerfile,切记这里不要有任何后缀名。如果不会写,访问我的项目地址,复制然后修改,吧Dockerfile里的war包名称修改,修改完后,一定要记得提交,可以在coding刷新你的项目,看有没有上传上去,dockerfile的编写语法网上一大堆,就不重复造轮子了。项目地址

4.创建并部署应用

接下来,文字描述不清楚,采用图片说话

创建应用

第一次需要手动出发

  • 第一次应用创建成功后,需要手动触发。触发以后要记得刷新页面,这时候就会看到构建的镜像了。

部署应用

  • 这是接着上一步的操作

填写应用名,并选择主机,然后最下边点击部署应用程序

设置端口,dockerfile指定tomcat的端口是8080,80端口是宿主机的端口,到时候我们通过宿主机的ip就可以访问docker的应用了。

这个自动发布一定要打开,这样下次代码修改后,才会在自动构建镜像后并自动部署应用程序。

这块可以看到tomcat的日志

  • 部署成功

这时我们在宿主机上进行访问就可以访问到,然后通过docker命令查看本地镜像和运行的程序,这都是daocloud自动化部署的好处,不然构建镜像,运行与管理镜像都得我们自己操作,而且还得直接操作服务器,这样并不友好,这样就算不会操作服务器也照样可以部署程序。

如果操作中有任何问题,请在下方评论,或者加群200909980交流

如果有多个docker可以通过nginx 反向代理做转发,请参考我的博文点击查看

如果想体验一下自动部署,就重新打个包,然后push到coding的仓库,然后就会看到你的程序会自动部署。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏web开发

Gulp实现css、js、图片的压缩以及css、js文件的MD5命名

目前做代码压缩合并的工具有很多,诸如gulp,webpack,grunt等等,可以说这些项目构建工具的功能非常之强大:图片压缩、图片转base64、css和js...

2648
来自专栏草根专栏

Angular CLI 简介

如果您正在使用angular, 但是没有好好利用angular cli的话, 那么可以看看本文.

1.2K10
来自专栏游戏杂谈

PHP 图片验证码的问题

发现没有问题,查看php.ini中的扩展,发现extension=php_gd2.dll 已经开启了

92
来自专栏ytkah

如何查看小视频参数【微信高级教程7】

  在聊天窗口中输入//sightinfo 可以让小视频的左上角显示小视频的一些参数,比如帧率、分辨率、时长、大小等。输入 //sightinfo 并发送后,参...

2907
来自专栏腾讯IVWEB团队的专栏

编写原生 Node.js 模块

当 Javascript 的性能遇到瓶颈,或者需要增强 Javascript 能力的时候,就需要依赖native模块来实现了。应用场景日常工作中,我们经常需要将...

1920
来自专栏Youngxj

[教程]简单几步打造聊天室

1633
来自专栏一“技”之长

Git命令集之三——帮助与初始化命令 原

823
来自专栏草根专栏

使用Angular CLI生成 Angular 5项目

如果您正在使用angular, 但是没有好好利用angular cli的话, 那么可以看看本文. Angular CLI 官网: https://github....

2753
来自专栏电光石火

如何让nginx显示文件夹目录

1. 如何让nginx显示文件夹目录 vi /etc/nginx/conf.d/default.conf 添加如下内容: location / ...

16910
来自专栏凉城

文章内的新浪短网址https无法访问解决办法!

1744

扫码关注云+社区