校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > docker部署apollo詳細教程

docker部署apollo詳細教程

熱門標簽:承德地圖標注公司 百度地圖標注公司位置要多少錢 濮陽好的聯通400電話申請 山東企業外呼系統公司 靈圖uu電子寵物店地圖標注 地圖標注如何改成微信號 400電話號碼辦理多少錢 虛假地圖標注 地圖標注黃河的位置

1、前言

apollo的詳細介紹我就不在這里多說了,官網上https://github.com/ctripcorp/apollo 已經說的非常明白了,我就不在這班門弄斧了,還不了解的小伙伴可以去官網上去了解下。

本篇文章只是記錄我在使用docker部署的Apollo以及其集群的方式,給大家分享出來也自我做一個記錄。

注意: 我是直接部署開始的,有關數據庫的創建和初始化自己根據官網搞定。

2、源碼編譯

2.1 網絡策略

網絡策略直接使用官網描述的就可以,具體就是分別編輯apollo-configservice/src/main/resources/application.yml和apollo-adminservice/src/main/resources/application.yml,然后把需要忽略的網卡加進去。

如下面這個例子就是對于apollo-configservice,把docker0和veth.*的網卡在注冊到Eureka時忽略掉。

spring:
   application:
     name: apollo-configservice
   profiles:
    active: ${apollo_profile}
   cloud:
    inetutils:
     ignoredInterfaces:
      - docker0
      - veth.*

注意,對于application.yml修改時要小心,千萬不要把其它信息改錯了,如spring.application.name等。

2.2 動態指定注冊網絡

在使用docker搭建集群是, adminservice、configservice都需要向注冊中心注冊地址,如果不指定注冊IP,注冊的是docker內部的網絡,導致網絡不通。

在apollo-configservice/src/main/resources/bootstrap.yml和apollo-adminservice/src/main/resources/bootstrap.yml添加如下代碼。

eureka:
 instance:
    ip-address: ${eureka.instance.ip-address}

這個地方取值從環境變量中取,容器外部來配置這樣給部署帶來了更大的靈活性。

到這源碼的修改已經完成,直接build打包就可以了,拿到對應三個服務的zip包。

如果懶得修改,也可以直接從https://github.com/yuelicn/apollo.拉下我修改好的源碼直接打包即可。

3、dockerfile編寫

Apollo 的Dockerfile非常簡單, 直接使用官方提供的即可。下方是adminservice示例。

# Dockerfile for apollo-adminservice
# Build with:
# docker build -t apollo-adminservice .
# Run with:
# docker run -p 8090:8090 -d --name apollo-adminservice apollo-adminservice

FROM java:8-jre
MAINTAINER Louis

ENV VERSION 1.5.0

RUN apt-get install unzip

ADD apollo-adminservice-${VERSION}-github.zip /apollo-adminservice/apollo-adminservice-${VERSION}-github.zip

RUN unzip /apollo-adminservice/apollo-adminservice-${VERSION}-github.zip -d /apollo-adminservice \

  && rm -rf /apollo-adminservice/apollo-adminservice-${VERSION}-github.zip \

  && sed -i '$d' /apollo-adminservice/scripts/startup.sh \

  && echo "tail -f /dev/null" >> /apollo-adminservice/scripts/startup.sh

EXPOSE 8090

CMD ["/apollo-adminservice/scripts/startup.sh"]

需要注意的,

1: version 需要根據自己打包的版本來修改
2: ADD zip包時修改你路徑

三個服務的dockerfile文件基本相同,我就不在這多說了。需要的小伙伴直接從https://github.com/yuelicn/docker-apollo就可以了。

4 docker-compose 的編寫

4.1 apollo-configservice-compose.yml

version: "3"
services:
 apollo-configservice:
  container_name: apollo-configservice
  build: apollo-configservice/
  image: apollo-configservice
  ports:
   - 8080:8080
  volumes:
   - "/docker/apollo/logs/100003171:/opt/logs/100003171"
  environment:
   - spring_datasource_url=jdbc:mysql://127.0.0.1:8306/ApolloConfigDB_TEST?characterEncoding=utf8
   - spring_datasource_username=root
   - spring_datasource_password=mysql2019*
   - eureka.instance.ip-address=172.11.11.11

  restart: always

注意事項,

1: build: 中指定你Dockerfile文件的位置
2: environment 環境變量中指定你數據庫的配置信息
3: eureka.instance.ip-address 指定注冊到eureka地址,這個最好使用你物理機的內網地址。

特別注意: 啟動前最好先修改ApolloConfigDB數據庫中 ServerConfig中的eureka.service.url值,改為具體的IP
啟動:

docker-compose -f apollo-configservice-compose.yml up --build -d

4.2 apollo-adminservice-compose.yml

apollo-adminservice-compose.yml的內容基本和apollo-configservice-compose.yml相同,在這我就不一一說明了。

4.3 apollo-portal-compose.yml

version: "3"
services:
 apollo-portal:
  container_name: apollo-portal
  build: apollo-portal/
  image: apollo-portal
  ports:
   - 8070:8070
  volumes:
   - "/docker/apollo/logs/100003173:/opt/logs/100003173"
   - "/apollo-portal/config/apollo-env.properties:/apollo-portal/config/apollo-env.properties"
  environment:
   - spring_datasource_url=jdbc:mysql://127.0.0.1:8306/ApolloPortalDB?characterEncoding=utf8
   - spring_datasource_username=root
   - spring_datasource_password=mysql2019*
   

  restart: always

注意事項:
1: 需要注意的和上述configservice基本相同
2: 特別需要注意的事項 重要!重要!重要!重要!重要!volumes: 中我將
apollo-env.properties文件映射到容器外面了,將自己的apollo-env.properties文件配置后將自己的掛載地址填上,冒號前的地址“/apollo-portal/config/apollo-env.properties”修改成自己的。必須在啟動前將此配置文件指定好。
啟動

docker-compose -f apollo-configservice-compose.yml up --build -d

4.3.1 apollo-env.properties

local.meta=http://localhost:8080
dev.meta=${dev_meta}
fat.meta=${fat_meta}
uat.meta=${uat_meta}
lpt.meta=${lpt_meta}
pro.meta=${pro_meta}

將自己的meta地址配置上, 沒有的可以直接刪除。有不明白的可以去官網上了解,環境配置完后修改對應的數據庫中ApolloPortalDB.ServerConfig中apollo.portal.envs 值,填上你的配置的環境。否則我們在portal管理頁面只能看到默認dev環境。

5 完整的docker-compose.yml

如果嫌棄一個個啟動麻煩也以使用一個完整的compose來啟動。

version: "3"
services:
 apollo-configservice:
  container_name: apollo-configservice
  build: apollo-configservice/
  image: apollo-configservice
  ports:
   - 8080:8080
  volumes:
   - "/docker/apollo/logs/100003171:/opt/logs/100003171"
  environment:
   - spring_datasource_url=jdbc:mysql://47.xx.xx.209:8306/ApolloConfigDB?characterEncoding=utf8
   - spring_datasource_username=root
   - spring_datasource_password=Tusdao@xx*
   - eureka.instance.ip-address=172.11.11.11
  restart: always

 apollo-adminservice:
  container_name: apollo-adminservice
  build: apollo-adminservice/
  image: apollo-adminservice
  ports:
   - 8090:8090
  volumes:
   - "/docker/apollo/logs/100003172:/opt/logs/100003172"
  environment:
   - spring_datasource_url=jdbc:mysql://47.xx.xx.209:8306/ApolloConfigDB?characterEncoding=utf8
   - spring_datasource_username=root
   - spring_datasource_password=Tusdao@xx*
   - eureka.instance.ip-address=172.11.11.11
  depends_on:
   - apollo-configservice

  restart: always

 apollo-portal:
  container_name: apollo-portal
  build: apollo-portal/
  image: apollo-portal
  ports:
   - 8070:8070
  volumes:
   - "/docker/apollo/logs/100003173:/opt/logs/100003173"
   - "/Apollo/docker-image/apollo-portal/config/apollo-env.properties:/apollo-portal/config/apollo-env.properties"
  environment:
   - spring_datasource_url=jdbc:mysql://47.xx.xx.209:8306/ApolloPortalDB?characterEncoding=utf8
   - spring_datasource_username=root
   - spring_datasource_password=Tusdao@xx*
  depends_on:
   - apollo-adminservice
  restart: always

注意: 需要修改的地方和單個基本相同,我在這就不嘮叨了。

到這docker部署Apoll基本搞定,如有小伙伴需要完整的docker部署文件請移步https://github.com/yuelicn/docker-apollo

6集群的搭建

Apollo集群的搭建非常簡單,只需要修改兩個地方就可以了,我們就以正式環境(pro)來說明,
在pro環境我們搭建了兩套adminservice、configservice,數據庫都是同一個ApolloConfigDB,

1:將ServerConfig中的eureka.service.url值eureka連接信息兩個都寫上用逗號分隔:http://IP-1:port/eureka,http://IP-2:port/eureka

2:修改apollo-env.properties中對應環境的連接信息如: pro.meta=http://IP-1:port,http://IP-2:port 地址用逗號分隔就可以了。

之后重啟服務就搞定了。

最后強調,adminservice、configservice 需要每個環境單獨部署,包括數據庫。portal只需要部署一套就可以了。

OK! 完成,上述是指個人搭建記錄,希望對你有幫助,如果不對的地方歡迎指正。

修改后的源碼地址:https://github.com/yuelicn/apollo

整理好的Docker-Apollo:https://github.com/yuelicn/docker-apollo

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:德宏 鷹潭 樂山 淮安 上海 安康 泰安 福州

巨人網絡通訊聲明:本文標題《docker部署apollo詳細教程》,本文關鍵詞  docker,部署,apollo,詳細,教程,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《docker部署apollo詳細教程》相關的同類信息!
  • 本頁收集關于docker部署apollo詳細教程的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    久久影音资源网| 亚洲一区二区三区美女| 亚洲最大成人综合| 国产在线播放一区二区三区| 91激情在线视频| 国产日韩欧美在线一区| 日日夜夜精品视频免费| 色综合咪咪久久| 国产精品乱码妇女bbbb| 韩国午夜理伦三级不卡影院| 欧美三电影在线| 最近日韩中文字幕| 懂色av噜噜一区二区三区av| 精品欧美乱码久久久久久| 午夜日韩在线电影| 色婷婷久久99综合精品jk白丝| 久久夜色精品国产欧美乱极品| 日本欧美一区二区三区| 欧美亚洲高清一区二区三区不卡| 国产精品久久久久aaaa| 国产精品一区二区三区四区| 日韩女同互慰一区二区| 午夜精品久久久久久久久久久| 一道本成人在线| 亚洲欧美另类久久久精品2019| 风流少妇一区二区| 欧美国产综合一区二区| 国产一区二区三区国产| 欧美大黄免费观看| 久久99精品久久久久久国产越南| 91精品视频网| 另类综合日韩欧美亚洲| 欧美哺乳videos| 国产资源在线一区| 久久久蜜臀国产一区二区| 国产一区二区调教| 中文字幕免费不卡| 99久久久久久| 亚洲高清免费一级二级三级| 欧美性做爰猛烈叫床潮| 爽好多水快深点欧美视频| 5858s免费视频成人| 美腿丝袜一区二区三区| 欧美大片在线观看一区二区| 国产高清视频一区| 亚洲欧美偷拍三级| 欧美日韩大陆在线| 久久99精品久久久久久动态图 | 国产午夜三级一区二区三| 国产乱人伦偷精品视频不卡| 久久久91精品国产一区二区精品| 成人99免费视频| 午夜一区二区三区视频| 精品久久久久久亚洲综合网| 粉嫩13p一区二区三区| 亚洲男人天堂av| 欧美三区在线观看| 精品夜夜嗨av一区二区三区| 中文av一区二区| 欧美日韩免费高清一区色橹橹| 日本亚洲电影天堂| 国产精品国产精品国产专区不蜜| 在线观看免费一区| 狠狠色丁香婷婷综合久久片| 国产精品九色蝌蚪自拍| 欧美日韩和欧美的一区二区| 九九九久久久精品| 亚洲乱码国产乱码精品精可以看 | 色哟哟一区二区| 日本亚洲电影天堂| 中文字幕日韩一区| 精品久久久久久久人人人人传媒 | 亚洲精品一区二区三区99| www.一区二区| 日韩国产在线观看| 中文字幕一区二区三区乱码在线| 欧美日韩国产另类一区| 不卡大黄网站免费看| 日韩精品亚洲专区| 中文字幕视频一区| 日韩精品一区二区三区中文不卡| 91麻豆6部合集magnet| 精品亚洲成a人在线观看| 一区二区三区欧美日| 国产精品污www在线观看| 欧美一级精品在线| 欧洲激情一区二区| yourporn久久国产精品| 国产一区二区在线看| 美女在线观看视频一区二区| 一区二区欧美国产| 亚洲免费观看在线观看| 中文字幕巨乱亚洲| 欧美tk丨vk视频| 欧美精品日韩一区| 日本精品一级二级| 99久久综合国产精品| 国产一区欧美日韩| 麻豆国产一区二区| 美国三级日本三级久久99| 三级久久三级久久久| 亚洲一区二区中文在线| 一区二区三区在线观看网站| 国产精品欧美综合在线| 久久精品水蜜桃av综合天堂| 久久理论电影网| 久久人人爽爽爽人久久久| 精品国产免费视频| 精品国产污污免费网站入口 | 久久你懂得1024| 精品乱人伦小说| 久久综合久色欧美综合狠狠| 欧美一级一区二区| 日韩一区二区精品| 欧美大黄免费观看| 欧美成人精品福利| 2023国产精品| 亚洲国产岛国毛片在线| 国产精品三级视频| 中文字幕日韩欧美一区二区三区| 国产精品久久久久一区二区三区| 国产精品美女视频| 一区二区三区欧美日| 五月天视频一区| 视频一区视频二区中文| 麻豆久久一区二区| 国产精品88av| 99精品视频一区二区| 欧洲av在线精品| 欧美一区二区久久| 久久久久久夜精品精品免费| 久久久五月婷婷| 亚洲色图视频免费播放| 午夜亚洲福利老司机| 麻豆一区二区在线| 成人免费视频视频| 91成人在线免费观看| 欧美一区二区三区视频免费播放| 精品国产3级a| 亚洲天堂网中文字| 三级成人在线视频| 国产98色在线|日韩| 欧美性色aⅴ视频一区日韩精品| 日韩午夜av一区| 国产欧美日本一区二区三区| 亚洲精品一二三四区| 日本va欧美va精品发布| 成人免费视频播放| 制服丝袜亚洲色图| 国产日韩欧美高清| 日韩高清不卡一区| 成人午夜电影网站| 欧美精品xxxxbbbb| 中文字幕一区二区三区av| 午夜精品久久久久久久99水蜜桃| 国产精品99久久久| 91精品国产综合久久婷婷香蕉 | 精品福利二区三区| 亚洲色图都市小说| 久久精品国产网站| 欧美制服丝袜第一页| 久久久久九九视频| 亚洲超碰精品一区二区| 成人中文字幕合集| 精品卡一卡二卡三卡四在线| 一区二区三区四区乱视频| 韩国视频一区二区| 欧美日韩大陆在线| 国产精品黄色在线观看 | 午夜国产精品影院在线观看| 国产精品伊人色| 欧美电影影音先锋| 亚洲精品水蜜桃| 国产成人在线色| 精品区一区二区| 日韩电影在线一区二区三区| 一本大道久久a久久综合| 国产丝袜欧美中文另类| 奇米色一区二区| 欧美日韩黄色一区二区| 亚洲精品国产视频| av高清不卡在线| 国产精品久久久久久久岛一牛影视 | 一区二区三区四区中文字幕| 精品无人区卡一卡二卡三乱码免费卡| 91精彩视频在线| 亚洲乱码精品一二三四区日韩在线| 国产精品77777竹菊影视小说| 精品国精品国产| 久久99国内精品| 欧美成人一区二区三区片免费 | 亚洲五月六月丁香激情| 91国产丝袜在线播放| 专区另类欧美日韩| 不卡的av网站| 亚洲欧美日韩久久| 91精品1区2区| 视频在线在亚洲| 91精品免费在线观看| 蜜臀av在线播放一区二区三区|