最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

docker如何在一個(gè)容器內(nèi)部署多個(gè)服務(wù)

 更新時(shí)間:2024年01月29日 10:42:12   作者:我要用代碼向我喜歡的女孩表白  
這篇文章主要介紹了docker如何在一個(gè)容器內(nèi)部署多個(gè)服務(wù),思路是這樣的首先拿到你的httpd,以及你的springBoot,合并他們的Dockerfile,然后打包,然后啟動(dòng)的時(shí)候啟動(dòng)多個(gè)端口(httpd的端口和你服務(wù)的端口),需要的朋友可以參考下

原因是,我有一個(gè)springBoot服務(wù)需要寫入httpd的目錄,然后httpd提供鏈接給別人下載。之前的方法是,httpd和springBoot各一個(gè)容器,但是我們將鏡像是部署在騰訊云上的,騰訊云會(huì)自動(dòng)對(duì)每個(gè)容器分離不同的虛擬機(jī),這樣就導(dǎo)致,他們不能共享目錄。所以只能寫在一個(gè)容器內(nèi)。

思路,首先拿到你的httpd,以及你的springBoot,合并他們的Dockerfile,然后打包,然后啟動(dòng)的時(shí)候啟動(dòng)多個(gè)端口(httpd的端口和你服務(wù)的端口)

0.創(chuàng)建一個(gè)文件夾,將之前的httpd以及springBoot放進(jìn)去

mkdir dahua-houduan
cp -r httpd/ dahua-houduan/
cp -r dahua/ dahua-houduan/

1.合并dockerfile

httpd原docker

FROM docker.io/centos:7
RUN echo "Asia/Shanghai" > /etc/timezone
RUN yum -y install httpd
RUN mv /etc/httpd/conf.d/welcome.conf /etc/httpd/conf.d/welcome.conf.bak
COPY httpd/httpd.conf /etc/httpd/conf/httpd.conf
COPY run.sh /run.sh
RUN chmod 777 /run.sh
EXPOSE 9999
ENTRYPOINT [ "/run.sh" ]

說明

首先拉個(gè)鏡像,然后下載httpd,然后改配置,運(yùn)行sh腳本。

這里我們要取的是,都取 ,sh腳本等一會(huì)兒進(jìn)行修改

springBoot原docker

FROM java:8
RUN echo "Asia/Shanghai" > /etc/timezone
EXPOSE 8087
COPY dahua/config /config
COPY dahua/logs /logs
COPY dahua/dahua-1.0.jar /dahua-spring.jar
COPY dahua/Dockerfile /Dokcerfile
ENTRYPOINT ["java","-jar","/dahua-spring.jar"]

說明

首先獲取jdk環(huán)境,然后復(fù)制配置文件和日志,復(fù)制jar啟動(dòng)

這里我們獲取的是,除最后1行的所有

合并說明

建立一個(gè)Dockerfile

注意from有個(gè)坑,如果有多個(gè)from只會(huì)保留最后一個(gè)from的內(nèi)容

合并 dockerfile

FROM docker.io/centos:7
RUN echo "Asia/Shanghai" > /etc/timezone
RUN yum -y install httpd
RUN mv /etc/httpd/conf.d/welcome.conf /etc/httpd/conf.d/welcome.conf.bak
COPY httpd/httpd.conf /etc/httpd/conf/httpd.conf
COPY httpd/run.sh /run.sh
RUN chmod 777 /run.sh
EXPOSE 9999

FROM java:8
EXPOSE 8087
COPY dahua/config /config
COPY dahua/logs /logs
COPY dahua/dahua-1.0.jar /dahua-spring.jar
COPY dahua/Dockerfile /Dokcerfile

ENTRYPOINT [ "/run.sh" ]

之前的centos系統(tǒng)會(huì)消失,因?yàn)橐粋€(gè)容器是一個(gè)虛擬機(jī),from一次就相當(dāng)于產(chǎn)生一個(gè)新的虛擬機(jī),而虛擬機(jī)本質(zhì)只能有一個(gè)虛擬環(huán)境。

這里對(duì)上面紅色的java8不進(jìn)行from(刪除jdk8),而是單獨(dú)在centos7中單獨(dú)部署jdk8

說明

jdk的安裝就是把目錄copy過去更新環(huán)境變量

dockerFile新增內(nèi)容為

COPY jdk1.8 /jdk1.8.0_181
ENV JAVA_HOME=/jdk1.8.0_181
ENV PATH=$PATH:${JAVA_HOME}/bin

完整docker鏡像

FROM docker.io/centos:7
RUN echo "Asia/Shanghai" > /etc/timezone
RUN yum -y install httpd
RUN mv /etc/httpd/conf.d/welcome.conf /etc/httpd/conf.d/welcome.conf.bak
COPY httpd/httpd.conf /etc/httpd/conf/httpd.conf
COPY httpd/run.sh /run.sh
RUN chmod 777 /run.sh
EXPOSE 9999
COPY jdk1.8 /jdk1.8.0_181
ENV JAVA_HOME=/jdk1.8.0_181
ENV PATH=$PATH:${JAVA_HOME}/bin

EXPOSE 8087
COPY dahua/config /config
COPY dahua/logs /logs
COPY dahua/dahua-1.0.jar /dahua-spring.jar
COPY dahua/Dockerfile /Dokcerfile

ENTRYPOINT [ "/run.sh" ]

sh腳本修改

修改run.sh

#!/bin/bash
httpd
java -jar dahua-spring.jar

2.打包

docker build -t test1 .

3.啟動(dòng)

docker run -p 8087:8087 -p 9999:9999 test1

到此這篇關(guān)于docker一個(gè)容器內(nèi)部署多個(gè)服務(wù)的文章就介紹到這了,更多相關(guān)docker多個(gè)服務(wù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • docker分布式部署jumpserver實(shí)踐

    docker分布式部署jumpserver實(shí)踐

    文章介紹了如何部署分布式JumpServer,包括定義網(wǎng)絡(luò)和數(shù)據(jù)持久化、部署數(shù)據(jù)庫、配置Redis密碼、生成隨機(jī)加密秘鑰并啟動(dòng)JumpServer容器,作者建議在啟動(dòng)前檢查SECRET_KEY是否一致,以確保數(shù)據(jù)庫加密字段的解密
    2026-03-03
  • docker?screen命令的使用

    docker?screen命令的使用

    本文主要介紹了docker?screen命令的使用,Screen命令則提供了強(qiáng)大的多會(huì)話管理功能,讓我們可以實(shí)時(shí)監(jiān)控和操作容器,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01
  • docker網(wǎng)絡(luò)雙向連接詳解

    docker網(wǎng)絡(luò)雙向連接詳解

    在本篇文章里小編給大家分享的是一篇關(guān)于docker網(wǎng)絡(luò)雙向連接知識(shí)點(diǎn)詳解內(nèi)容,有興趣朋友們可以參考學(xué)習(xí)下。
    2020-01-01
  • Docker部署Java應(yīng)用程序的實(shí)現(xiàn)步驟

    Docker部署Java應(yīng)用程序的實(shí)現(xiàn)步驟

    本文主要介紹了Docker部署Java應(yīng)用程序的實(shí)現(xiàn)步驟,通過將Java應(yīng)用程序打包成一個(gè)Docker鏡像,可以實(shí)現(xiàn)快速部署、資源隔離和靈活擴(kuò)展,感興趣的可以了解一下
    2024-03-03
  • 如何使用docker compose 部署ELK 8.X及監(jiān)控

    如何使用docker compose 部署ELK 8.X及監(jiān)控

    這篇文章主要介紹了如何使用docker compose 部署ELK 8.X及監(jiān)控,包括前置環(huán)境配置及docker compose啟動(dòng)/停止的命令,感興趣的朋友跟隨小編一起看看吧
    2023-10-10
  • CentOS 8.4安裝Docker的詳細(xì)教程

    CentOS 8.4安裝Docker的詳細(xì)教程

    這篇文章主要介紹了CentOS 8.4安裝Docker的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-11-11
  • docker中nginx的默認(rèn)路徑位置和映射目錄啟動(dòng)方式

    docker中nginx的默認(rèn)路徑位置和映射目錄啟動(dòng)方式

    這篇文章主要介紹了docker中nginx的默認(rèn)路徑位置和映射目錄啟動(dòng)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • docker images導(dǎo)入導(dǎo)出方式

    docker images導(dǎo)入導(dǎo)出方式

    這篇文章主要介紹了docker images導(dǎo)入導(dǎo)出方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 如何使用Docker定時(shí)備份數(shù)據(jù)

    如何使用Docker定時(shí)備份數(shù)據(jù)

    這篇文章主要介紹了如何使用Docker定時(shí)備份數(shù)據(jù),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2024-04-04
  • ubuntu 22.04安裝docker的詳細(xì)過程

    ubuntu 22.04安裝docker的詳細(xì)過程

    這篇文章主要介紹了ubuntu 22.04安裝docker的詳細(xì)過程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2025-04-04

最新評(píng)論

定边县| 义马市| 永和县| 株洲市| 丹寨县| 安岳县| 德庆县| 当涂县| 无棣县| 隆昌县| 诸城市| 遂昌县| 内丘县| 隆子县| 湖南省| 海城市| 黄陵县| 万安县| 苏尼特右旗| 青田县| 读书| 苗栗县| 兴海县| 册亨县| 井冈山市| 吉林省| 田阳县| 茌平县| 天峻县| 巴青县| 乡宁县| 民县| 陇川县| 鄂托克旗| 名山县| 肥乡县| 章丘市| 年辖:市辖区| 夏邑县| 大连市| 繁昌县|