美文网首页Docker容器
docker部署eureka-server

docker部署eureka-server

作者: 古甲哈醒 | 来源:发表于2020-03-10 16:50 被阅读0次

eureka在springcloud项目中作为注册中心使用,提供服务注册和服务发现功能。本片介绍如何使用构建镜像的方式部署eureka。
1、准备eureka部署包
eureka-server部署包大家参考springcloud官方示例去创建eureka工程,然后打成jar包即可,不在此多述,本篇重点是部署。
我的部署包名为:springcloud-eureka-server-0.1.jar
2、编写Dockerfile文件
创建文件名为Dockerfile的文件,文件内容如下:

FROM java:8
VOLUME /tmp
ADD springcloud-eureka-server-0.1.jar app.jar
RUN bash -c 'touch /app.jar'
EXPOSE 8761
ENTRYPOINT [ "java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "/app.jar" ]

文件内容解释:
java:8 是指使用jdk.18的java镜像,在容器中安装java
VOLUME 指向了一个/tmp的目录,springboot内置tomcat默认使用/tmp作为工作目录。作用是在主机的/var/lib/docker目录下创建了一个临时文件,并连接到容器的/tmp。
ADD 将项目的jar文件作为app.jar添加到容器
RUN 表示在新创建的镜像中执行一些命令,然后把执行的结果提交到当前镜像
EXPOSE 容器暴露端口
ENTRYPOINT 应用启动命令 参数设定

3、上传部署包到服务器
将springcloud-eureka-server-0.1.jar和Dockerfile两个文件上传到服务器同一目录下。

[root@iZbp13sno1lc2yxlhjc4b3Z eureka]# ls
Dockerfile  springcloud-eureka-server-0.1.jar
[root@iZbp13sno1lc2yxlhjc4b3Z eureka]# 

4、构建镜像文件

[root@iZbp13sno1lc2yxlhjc4b3Z eureka]# docker build -t eureka_v0.1 .

注意命令后面有个空格和点。这个过程稍微有点长,要下载java等资源。
镜像创建好后,查看镜像文件:

[root@iZbp13sno1lc2yxlhjc4b3Z eureka]# docker images
REPOSITORY            TAG                 IMAGE ID            CREATED             SIZE
eureka_v0.1           latest              0de0a6524b30        About an hour ago   683MB
nginx                 latest              a1523e859360        12 days ago         127MB
fauria/vsftpd         latest              2351afb0fb43        13 days ago         315MB
portainer/portainer   latest              10383f5b5720        3 weeks ago         78.6MB
mysql                 5.7.24              ba7a93aae2a8        14 months ago       372MB
tomcat                8.5.34              ca9e2fccef98        16 months ago       463MB
java                  8                   d23bdf5b1b1b        3 years ago         643MB

发现镜像eureka_v0.1已经创建好,并且java镜像也存在。

5、创建eureka容器并运行

[root@iZbp13sno1lc2yxlhjc4b3Z eureka]# docker run --name eureka -d -p 8761:8761 eureka_v0.1

查看容器运行情况:

[root@iZbp13sno1lc2yxlhjc4b3Z eureka]# docker ps
CONTAINER ID        IMAGE                 COMMAND                  CREATED             STATUS              PORTS 
aaaa27341bc3        eureka_v0.1           "java -Djava.securit…"   About an hour ago   Up About an hour    0.0.0.0:8761->8761/tcp                                                             eureka

打开浏览器,输入地址:http://192.168.2.130:8761/eureka,可看到eureka监控页面

image.png

eureka也可以打成war包以web的应用方式部署在tomcat容器中,关于tomcat容器部署web应用可以参考我之前发布的一篇文章。

相关文章

网友评论

    本文标题:docker部署eureka-server

    本文链接:https://www.haomeiwen.com/subject/lvtgdhtx.html