docker如何部署eureka-server
eureka在springcloud項目中作為注冊中心使用,提供服務(wù)注冊和服務(wù)發(fā)現(xiàn)功能。本片介紹如何使用構(gòu)建鏡像的方式部署eureka。
1、準(zhǔn)備eureka部署包
eureka-server部署包大家參考springcloud官方示例去創(chuàng)建eureka工程,然后打成jar包即可,不在此多述,本篇重點是部署。
我的部署包名為:springcloud-eureka-server-0.1.jar
2、編寫Dockerfile文件
創(chuàng)建文件名為Dockerfile的文件,文件內(nèi)容如下:
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" ]
文件內(nèi)容解釋:
- java:8 是指使用jdk.18的java鏡像,在容器中安裝java
- VOLUME 指向了一個/tmp的目錄,springboot內(nèi)置tomcat默認(rèn)使用/tmp作為工作目錄。作用是在主機(jī)的/var/lib/docker目錄下創(chuàng)建了一個臨時文件,并連接到容器的/tmp。
- ADD 將項目的jar文件作為app.jar添加到容器.
- RUN 表示在新創(chuàng)建的鏡像中執(zhí)行一些命令,然后把執(zhí)行的結(jié)果提交到當(dāng)前鏡像.
- EXPOSE 容器暴露端口.
- ENTRYPOINT 應(yīng)用啟動命令 參數(shù)設(shè)定
3、上傳部署包到服務(wù)器
將springcloud-eureka-server-0.1.jar和Dockerfile兩個文件上傳到服務(wù)器同一目錄下。
[root@iZbp13sno1lc2yxlhjc4b3Z eureka]# ls Dockerfile springcloud-eureka-server-0.1.jar [root@iZbp13sno1lc2yxlhjc4b3Z eureka]#
4、構(gòu)建鏡像文件
[root@iZbp13sno1lc2yxlhjc4b3Z eureka]# docker build -t eureka_v0.1 .
注意命令后面有個空格和點。這個過程稍微有點長,要下載java等資源。
鏡像創(chuàng)建好后,查看鏡像文件:
[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
發(fā)現(xiàn)鏡像eureka_v0.1已經(jīng)創(chuàng)建好,并且java鏡像也存在。
5、創(chuàng)建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監(jiān)控頁面
eureka也可以打成war包以web的應(yīng)用方式部署在tomcat容器中,關(guān)于tomcat容器部署web應(yīng)用可以參考這篇。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
docker?部署hbase并且java?Api連接的操作過程
這篇文章主要介紹了docker?部署hbase并且java?Api連接的操作過程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧2023-11-11Docker容器化spring boot應(yīng)用詳解
本篇文章主要介紹了Docker容器化spring boot應(yīng)用詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-04-04詳解Docker創(chuàng)建支持ssh服務(wù)的容器和鏡像
本篇文章主要介紹了詳解Docker創(chuàng)建支持ssh服務(wù)的容器和鏡像,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-05-05詳解如何優(yōu)雅的給Docker配置網(wǎng)絡(luò)代理
有時因為網(wǎng)絡(luò)原因,比如公司 NAT,或其它啥的,需要使用代理,這篇文章主要為大家詳細(xì)介紹了如何優(yōu)雅的給Docker配置網(wǎng)絡(luò)代理,需要的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-01-01最詳細(xì)的docker中安裝并配置redis(圖文詳解)
這篇文章主要介紹了最詳細(xì)的docker中安裝并配置redis(圖文詳解),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04ElasticSearch+Kibana通過Docker部署到Linux服務(wù)器中操作方法
本文介紹了Elasticsearch的基本概念,包括文檔和字段、索引和映射,還詳細(xì)描述了如何通過Docker在Linux服務(wù)器上安裝Elasticsearch、Kibana和IK分詞器,并驗證安裝,感興趣的朋友一起看看吧2025-02-02