首页 云计算

云计算核心技术Docker教程:Java镜像使用 Compose 在本地开发

在本节中,我们将创建一个 Compose 文件以java-docker使用单个命令启动我们的和 MySQL 数据库。我们还将设置 Compose 文件以java-docker在调试模式下启动应用程序,以便我们可以将调试器连接到正在运行的 Java 进程。

petclinic在 IDE 或文本编辑器中打开并创建一个名为docker-compose.dev.yml. 将以下命令复制并粘贴到文件中。

TIM截图20211130172307

这个 Compose 文件非常方便,因为我们不必键入要传递给docker run命令的所有参数。我们可以使用 Compose 文件声明性地做到这一点。

我们公开端口 8000 并声明 JVM 的调试配置,以便我们可以附加调试器。

使用 Compose 文件的另一个非常酷的功能是我们将服务解析设置为使用服务名称。因此,我们现在可以mysqlserver在我们的连接字符串中使用。我们使用的原因mysqlserver是因为我们在 Compose 文件中命名了我们的 MySQL 服务。

现在,启动我们的应用程序并确认它运行正常。

$ docker-compose -f docker-compose.dev.yml up --build

我们传递--build标志,以便 Docker 编译我们的图像,然后启动容器。如果运行成功,您应该会看到类似的输出:

TIM截图20211130172346

现在让我们测试我们的 API 端点。运行以下 curl 命令:

$ curl --request GET \

--url http://localhost:8080/vets \

--header 'content-type: application/json'

您应该会收到以下回复:

{"vetList":[{"id":1,"firstName":"James","lastName":"Carter","specialties":[],"nrOfSpecialties":0,"new":false},{"id":2,"firstName":"Helen","lastName":"Leary","specialties":[{"id":1,"name":"radiology","new":false}],"nrOfSpecialties":1,"new":false},{"id":3,"firstName":"Linda","lastName":"Douglas","specialties":[{"id":3,"name":"dentistry","new":false},{"id":2,"name":"surgery","new":false}],"nrOfSpecialties":2,"new":false},{"id":4,"firstName":"Rafael","lastName":"Ortega","specialties":[{"id":2,"name":"surgery","new":false}],"nrOfSpecialties":1,"new":false},{"id":5,"firstName":"Henry","lastName":"Stevens","specialties":[{"id":1,"name":"radiology","new":false}],"nrOfSpecialties":1,"new":false},{"id":6,"firstName":"Sharon","lastName":"Jenkins","specialties":[],"nrOfSpecialties":0,"new":false}]}

官方微博/微信

每日头条、业界资讯、热点资讯、八卦爆料,全天跟踪微博播报。各种爆料、内幕、花边、资讯一网打尽。百万互联网粉丝互动参与,TechWeb官方微博期待您的关注。

↑扫描二维码

想在手机上看科技资讯和科技八卦吗?

想第一时间看独家爆料和深度报道吗?

请关注TechWeb官方微信公众帐号:

1.用手机扫左侧二维码;

2.在添加朋友里,搜索关注TechWeb。

手机游戏更多