docker如何部署eureka-server
eureka在springcloud項(xiàng)目中作為注冊(cè)中心使用,提供服務(wù)注冊(cè)和服務(wù)發(fā)現(xiàn)功能。本片介紹如何使用構(gòu)建鏡像的方式部署eureka。
1、準(zhǔn)備eureka部署包
eureka-server部署包大家參考springcloud官方示例去創(chuàng)建eureka工程,然后打成jar包即可,不在此多述,本篇重點(diǎn)是部署。
我的部署包名為: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 指向了一個(gè)/tmp的目錄,springboot內(nèi)置tomcat默認(rèn)使用/tmp作為工作目錄。作用是在主機(jī)的/var/lib/docker目錄下創(chuàng)建了一個(gè)臨時(shí)文件,并連接到容器的/tmp。
- ADD 將項(xiàng)目的jar文件作為app.jar添加到容器.
- RUN 表示在新創(chuàng)建的鏡像中執(zhí)行一些命令,然后把執(zhí)行的結(jié)果提交到當(dāng)前鏡像.
- EXPOSE 容器暴露端口.
- ENTRYPOINT 應(yīng)用啟動(dòng)命令 參數(shù)設(shè)定
3、上傳部署包到服務(wù)器
將springcloud-eureka-server-0.1.jar和Dockerfile兩個(gè)文件上傳到服務(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 .
注意命令后面有個(gè)空格和點(diǎn)。這個(gè)過程稍微有點(diǎn)長(zhǎng),要下載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容器并運(yùn)行
[root@iZbp13sno1lc2yxlhjc4b3Z eureka]# docker run --name eureka -d -p 8761:8761 eureka_v0.1
查看容器運(yùn)行情況:
[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é)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Docker Buildx構(gòu)建多平臺(tái)鏡像的實(shí)現(xiàn)
本文主要介紹了Docker Buildx構(gòu)建多平臺(tái)鏡像的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07
Docker安全開放遠(yuǎn)程訪問連接權(quán)限方式
文章介紹了如何配置Docker以實(shí)現(xiàn)遠(yuǎn)程訪問、開啟認(rèn)證和通信加密,包括生成證書和私鑰、配置Docker守護(hù)進(jìn)程以及在IDEA和Maven中連接Docker服務(wù)的方法2024-11-11
詳解docker 允許主機(jī)ssh連接到docker容器中
本篇文章主要介紹了詳解docker 允許主機(jī)ssh到docker容器中,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-05-05
Docker底層技術(shù)Namespace Cgroup應(yīng)用詳解
在本篇文章里小編給大家整理的是關(guān)于Docker底層技術(shù)Namespace Cgroup應(yīng)用的相關(guān)知識(shí)點(diǎn),需要的朋友們學(xué)習(xí)下。2019-10-10
使用Docker構(gòu)建多環(huán)境應(yīng)用的完整指南
Docker已經(jīng)成為了現(xiàn)代應(yīng)用程序開發(fā)和部署的核心工具之一,本文將介紹如何使用Docker構(gòu)建多環(huán)境應(yīng)用,包括開發(fā)、測(cè)試和生產(chǎn)環(huán)境,希望對(duì)大家有所幫助2025-08-08
淺談Docker運(yùn)行Tensorboard和jupyter的方法
本篇文章主要介紹了淺談Docker 運(yùn)行Tensorboard 和 jupyter的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-03-03

