目录:
1.docker 容器编排工具
2.docker编排文件
3.docker结构
4.docker容器的三大组件
5.docker创建容器的几种办法
6.docker容器运维命令
7.Docker的核心组件
8.每天5分钟玩转docker容器技术 pdf
9.docker的使用方法
10.docker的框架结构
1.docker 容器编排工具
在实际的开发环境或者生产环境,容器往往都不是独立运行的,经常需要多个容器一起运行,此时,如果继续使用 run 命令启动容器,就会非常不便,在这种情况下,docker-compose 是一个不错的选择,使用 docker-compose 可以实现简单的容器编排,本文就来看看 docker-compose 的使用。
2.docker编排文件
本文以 jpress 这样一个开源网站的部署为例,向读者介绍 docker-compose 的使用jpress 是 Java 版的 wordPress ,不过我们不必关注 jpress 的实现,在这里我们只需要将之当作一个普通的应用即可,完成该项目的部署工作。
3.docker结构
准备工作这里我们一共需要两个容器:TomcatMySQL然后需要 jpress 的 war 包,war 包地址:jpress当然,这里的 jpress 并不是必须的,读者也可以结合自身情况,选择其他的 Java 项目或者自己写一个简单的 Java 项目部署都行。
4.docker容器的三大组件
编写 DockerfileTomcat 容器中,要下载相关的 war 等,因此我这里编写一个 Dockerfile 来做这个事在一个空的文件夹下创建 Dockerfile ,内容如下:FROMtomcat。
5.docker创建容器的几种办法
ADDhttps://github.com/JpressProjects/jpress/raw/alpha/wars/jpress-web-newest.war /usr/local/tomcat/webapps/
6.docker容器运维命令
RUNcd /usr/local/tomcat/webapps/ \ && mv jpress-web-newest.war jpress.war解释:容器基于 Tomcat 创建下载 jpress 项目的 war 包到 tomcat 的 webapps 目录下。
7.Docker的核心组件
给 jpress 项目重命名编写 docker-compose.yml在相同的目录下编写 docker-compose.yml ,内容如下(关于 yml 的基础知识,这里不做介绍,读者可以自行查找了解):。
8.每天5分钟玩转docker容器技术 pdf
version:”3.1″services:web:build:.container_name:jpressports:-“8080:8080″volumes:-/usr/local/tomcat/depends_on:
9.docker的使用方法
-dbdb:image:mysqlcontainer_name:mysqlcommand:–default-authentication-plugin=mysql_native_passwordrestart:
10.docker的框架结构
alwaysports:-“3306:3306″environment:MYSQL_ROOT_PASSWORD:123MYSQL_DATABASE:jpress解释:首先声明了 web 容器,然后声明db容器。
build . 表示 web 容器项目构建上下文为 . ,即,将在当前目录下查找 Dockerfile 构建 web 容器container_name 表示容器的名字ports 是指容器的端口映射volumes 表示配置容器的数据卷。
depends_on 表示该容器依赖于 db 容器,在启动时,db 容器将先启动,web 容器后启动,这只是启动时机的先后问题,并不是说 web 容器会等 db 容器完全启动了才会启动对于 db 容器,则使用 image 来构建,没有使用 Dockerfile 。
restart 描述了容器的重启策略environment 则是启动容器时的环境变量,这里配置了数据库 root 用户的密码以及在启动时创建一个名为 jpress 的库,environment 的配置可以使用字典和数组两种形式。
OK,经过如上步骤,docker-compose.yml 就算配置成功了运行运行的方式有好几种,但是建议使用 up 这个终极命令,up 命令十分强大,它将尝试自动完成包括构建镜像,(重新)创建服务,启动服务,并关联服务相关容器的一系列操作。
对于大部分应用都可以直接通过该命令来启动默认情况下, docker-compose up 启动的容器都在前台,控制台将会同时打印所有容器的输出信息,可以很方便进行调试,通过 Ctrl-C 停止命令时,所有容器将会停止,而如果使用 docker-compose up -d 命令,则将会在后台启动并运行所有的容器。
一般推荐生产环境下使用该选项因此,这里进入到 docker-compose.yml 所在目录下,执行如下命令:docker-compose up -d 执行结果如下:
执行后,通过 docker-compose ps 命令可以看到容器已经启动了初始化配置接下来,浏览器中输入 http://localhost:8080/jpress ,就可以看到 jpress 的配置页面:。
根据引导页面配置数据库的连接信息以及网站的基本信息:注意:由于 mysql 和 web 都运行在容器中,因此在配置数据库地址时,不能写回环地址,否则就去 web 所在的容器里找数据库了配置完成后,运行如下命令,重启 web 容器:。
docker restart jpress 测试浏览器中分别查看博客首页以及后台管理页,如下图:
其他如果想要停止容器的运行,可以执行如下命令:docker-compose down 总结本文主要向大家介绍了简单的容器编排,专业的或者大型项目的容器编排需要结合 K8s 来做,我们后面有机会再向大家介绍。
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,请使用WINRAR解压,如遇到无法解压的请联系管理员!
8. 精力有限,不少源码未能详细测试(解密),不能分辨部分源码是病毒还是误报,所以没有进行任何修改,大家使用前请进行甄别
丞旭猿论坛
暂无评论内容