Docker设置

Zve*_*tko 10 java containers development-environment docker

这天我正在阅读很多关于Docker的内容,我甚至试图在Vagrant的笔记本电脑上运行它.但我仍然不清楚为什么,特别是如何将它介绍给我的团队.只是我没有看到用例.

据我所知,您可以为Web服务器和数据库创建容器.所以你现在可以说嘿,我们正在使用我创建的custom-tomcat-1.0和custom-mysql-1.4容器.到目前为止这么清楚.我遇到的问题是那些"数据容器".

我仍然能够以某种方式理解我将DB-data-1.4与DB容器的数据文件一起更新到当前模式,我可以使用我的deployables的WEB-app-3.5,它将以某种方式与DB数据图像对应.

那个java怎么样?如果我有java DB,我需要在所有使用它的容器上安装JVM吗?

到目前为止有任何意义吗?现在有几件事我没有清楚地看到他们的位置.

  1. 开发商如何在当地工作呢?他将创建一些WEB-app图像快照并启动它?或者以某种方式将跳过WEB-app图像的使用,并以某种方式将构建文件直接提供给服务器映像?

  2. 有了jenkins,我想它会从git下载代码.构建它并创建一些WEB-app图像快照.开始一切.现在我可以运行一些集成测试,以某种方式从外部使用应用程序,但是如何?

基本上有两个问题:如何使用docker在本地开发,以及如何执行集成测试.我需要真实的用例,所以我可以看到它的大局.我们正在使用maven,java,spring,sql db,jenkins,junit.

小智 0

上面有很多疑问。据我了解,您正在尝试为开发人员创建一个环境,并且您正在尝试集成 jenkins 和 docker。

这是我处理相同情况时遵循的方法

1)首先,我们创建一个映像(例如 myimage),其中包含所有依赖项 db、java 等。该映像是我们的基础映像,开发人员可以多次使用。

2)开发人员可以创建自己的代码并将其合并到git中。

3)创建一个 jenkins 作业,该作业创建一个快照文件(例如:.zip),其中包含所有依赖项,如 jar 和包。

4)使用docker中的ssh插件将该zip移至目标服务器。

5)然后 Jenkins 应该触发 Dockerfile,将文件(.zip)移动到myimage容器中,并使您的 Web 应用程序启动并运行。

6)将所有类型的测试包含在 docker 内的目录中,并让 Dockerfile 为您触发它们。

7)确保当您在 Jenkins 中触发新构建时,之前的 Docker 容器已停止。

您可以利用 docker 中的挂载点-v移入和移出文件。

希望这个答案对您有所帮助。这对我有用。请告诉我们它是否也对您有用。一切顺利