使用Docker来构建、运行、发布微服务( 三 )


--->4406b96eca35
Removing intermediate container 4872c7353093
Step 4/5 : ADD ${JAR_FILE} app-jar
---> a2e55472f1db
step 5/5:ENTRYPOINT java-Djava.security.egd=file:/dev/./urandom -jar
/app.jar
---> Running in f536a4993ca5
-―->527b7c667dd2
Removing intermediate container f536a4993ca5
Successfully built 527b7c667dd2
Successfully tagged com.waylau.spring.cloud/hello-world-docker:latest
SECURITY WARNING: You are building a Docker image from Windows against
a non-Windows Docker host. All files and directories added to build
context will have '-rWxr-Xr-x' permissions. It is recommended to double
check and reset permissions for sensitive files and directories.
:docker(Thread[Task worker,5,main]) completed.Took 15 mins 24.218
secs.
BUILD SUCCESSFUL in 15m 26s
9actionable tasks: 3 executed,6 up-to-date
Stoppedo worker daemon(s).
构建成功,可以在控制台看到如上信息 。因篇幅有限,这里省去大部分内容 。
4.运行image
在构建Docker image完成之后,使用Docker来运行该image 。
docker run -p 8080:8080 -t com.waylau.spring.cloud/hello-world-docker图11-3展示了运行image的过程 。

使用Docker来构建、运行、发布微服务

文章插图
 
5.访问应用
image运行成功后,就能在浏览器访问http:/localhost:8080/hello,应能看到“Hello World! Wel-come to visit waylau.com!”字样的内容 。
6.关闭容器
可以先通过docker ps命令来查看正在运行的容器的ID,而后可以执行docker stop命令来关闭容器 。命令如下 。
C:UserslAdministrator>docker ps
CONTAINER ID IMAGE COMMAND
CREATED STATUS PORTS NAMES
7dde27af2b7b com.waylau.spring.cloud/hello-world-docker "java
0.0.0.0:8080-
-Djava.secur..." 4 minutes ago Up 4 minutes
>8080/tcpxenodochial_heyrovsky
C:lUsersAdministrator>docker stop 7dde27af2b7b7dde27af2b7b
Docker发布微服务当我们的微服务包装成为Docker的image之后,就能进行分发了 。Docker Hub是专门用于托管image的云服务 。用户可以将自己的image推送到Docker Hub上,以方面其他人下载 。
 Docker展望虽然本文只是挑选了一个最简单的Spring Boot微服务作为例子,但是可以完整呈现如何使用Docker构建、运行、发布一个微服务应用的整个过程 。读者可以举一反三,将天气预报系统中的其他微服务实例做相应的操作,实现天气预报系统的容器化改造 。为节约篇幅,本文不再对这个改造做详细的描述 。
源码本节示例所涉及的源码见hello-world-docker 。
使用Docker来构建、运行、发布微服务

文章插图




推荐阅读