Docker学习之运行SpringBoot微服务

栏目: Java · 发布时间: 5年前

内容简介:许久不来一发,很早之前就写过 Dockerfile,只是迟迟没有记录而已。这里我们以短信、邮件发送服务为例,演示整个过程,目录下事先生成了相关启动JAR。

Docker学习之运行SpringBoot微服务

前言

许久不来一发,很早之前就写过 Dockerfile,只是迟迟没有记录而已。

步骤

这里我们以短信、邮件发送服务为例,演示整个过程,目录下事先生成了相关启动JAR。

创建 Dockerfile 文件

# 基础镜像:仓库是java
FROM java:7-jre
# 当前镜像的维护者和联系方式
MAINTAINER itstyle 345849402@qq.com
# 挂载卷
VOLUME /tmp
# 将打包好的springBoot程序拷贝到容器中的指定位置
ADD itstyle_send.jar /opt/app.jar
# 容器对外暴露端口
EXPOSE 8080
# 容器启动后需要执行的命令(ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","-Denv=DEV","/opt/app.jar"])
CMD java -Djava.security.egd=file:/dev/./urandom -jar /opt/app.jar

执行 docker build 进行构建

执行docker build命令,docker就会根据Dockerfile里你定义好的命令进行构建新的镜像。

docker build -t itstyle_send:v1 .

构建过程

Sending build context to Docker daemon 100.6 MB
Step 1 : FROM java:7-jre
Trying to pull repository docker.io/library/java ... 
7-jre: Pulling from docker.io/library/java
5040bd298390: Pull complete 
fce5728aad85: Pull complete 
c42794440453: Pull complete 
9789263043d1: Pull complete 
028c93201aa7: Pull complete 
Digest: sha256:6fb55e5ffc4ce926c320faa5fb807ed1bccd84ccbbe278109c67c5b38684e633
 ---> b0006d129082
Step 2 : MAINTAINER itstyle 345849402@qq.com
 ---> Running in 3eb849897209
 ---> 804057905232
Removing intermediate container 3eb849897209
Step 3 : VOLUME /tmp
 ---> Running in 60c526a95e46
 ---> dc3d00181d4a
Removing intermediate container 60c526a95e46
Step 4 : ADD acts_send.jar /opt/app.jar
 ---> e55343642421
Removing intermediate container 09b296b4e9a3
Step 5 : EXPOSE 8080
 ---> Running in fb4d820d9a91
 ---> da660a4e78e3
Removing intermediate container fb4d820d9a91
Step 6 : CMD java -Djava.security.egd=file:/dev/./urandom -jar /opt/app.jar
 ---> Running in adb0a7921410
 ---> 0b7adaac48d9
Removing intermediate container adb0a7921410
Successfully built 0b7adaac48d9

查看镜像

docker images

如果出现以下说明构建成功:

REPOSITORY   TAG   IMAGE ID   CREATED    SIZE
itstyle_send  v1   0b7adaac48d9 7 minutes ago   374.5 MB

开发者可以把自己制作的镜像push到远端仓库,在任何一个系统上pull下来就可以直接部署了。做到一处制作,出处运行。

创建并运行容器

docker run -d --name itstyle_send  -p 8080:8080 itstyle_send:v1

查看日志

docker logs -f itstyle_send

问题

不过这里有一个问题,最终导致服务并没有启动成功。由于服务对外提供 RPC 服务,使用 zookeeper 作为注册中心,而容器并不能访问宿机以及相关内网网段的IP。

宿机网段:192.168. . ,容器网段:172.17. .

网络配置见: https://blog.52itstyle.com/archives/2328/

Docker学习之运行SpringBoot微服务

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

遗传算法

遗传算法

王小平 / 西安交通大学出版社 / 2002-1 / 40.00元

《遗传算法:理论应用与软件实现》全面系统地介绍了遗传算法的基本理论,重点介绍了遗传算法的经典应用和国内外的新发展。全书共分11章。第1章概述了遗传算法的产生与发展、基本思想、基本操作以及应用情况;第2章介绍了基本遗传算法;第3章论述了遗传算法的数学基础;第4章分析了遗传算法的多种改进方法;第5章初步介绍了进化计算理论体系;第6章介绍了遗传算法应用于数值优化问题;第7章介绍了遗传算法应用于组合优化问......一起来看看 《遗传算法》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具