濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > CentOS7使用docker部署Apollo配置中心的實(shí)現(xiàn)

CentOS7使用docker部署Apollo配置中心的實(shí)現(xiàn)

熱門標(biāo)簽:江蘇自動(dòng)外呼系統(tǒng)一般多少錢 鸚鵡螺號(hào)航海地圖標(biāo)注時(shí)間 400 電話 申請(qǐng)費(fèi)用 比較穩(wěn)定的外呼系統(tǒng) 長(zhǎng)沙回?fù)芡夂粝到y(tǒng) 山東電信外呼系統(tǒng)靠譜嗎 云南云電銷機(jī)器人招商 ai電話機(jī)器人營(yíng)銷 信貸電銷機(jī)器人系統(tǒng)

Apollo開源地址:

https://github.com/ctripcorp/apollo

第一步

將項(xiàng)目clone到本地,然后在github的releases頁面中下載三個(gè)zip文件

本文中重點(diǎn)講解截止2019年1月最新的1.2.0版本的部署方法

第二步

打開clone到本地的項(xiàng)目,目錄結(jié)構(gòu)如下

第三步

在此目錄下創(chuàng)建docker-compose.yml文件,寫入內(nèi)容:

version: "3"

services:
 apollo-configservice:                     ##容器服務(wù)名
  container_name: apollo-configservice            ##容器名
  build: apollo-configservice/src/main/docker/        ##Dockerfile路徑
  image: apollo-configservice             ##鏡像名
  ports:
   - "9180:8080"  
  volumes:
   - "/opt/logs/100003171"  ##將/opt/logs/100003171目錄掛載到宿主機(jī)的/Users/mobin/opt/logs/100003171方便在宿主機(jī)上查看日志
  environment:
   - spring_datasource_url=jdbc:mysql://192.168.31.136:3306/ApolloConfigDB?characterEncoding=utf8
   - spring_datasource_username=root
   - spring_datasource_password=123456

 apollo-adminservice:
  container_name: apollo-adminservice
  build: apollo-adminservice/src/main/docker/
  image: apollo-adminservice
  ports:
   - "9181:8090"
  depends_on:
   - apollo-configservice
  volumes:
   - "/opt/logs/100003172"
  environment:
   - spring_datasource_url=jdbc:mysql://192.168.31.136:3306/ApolloConfigDB?characterEncoding=utf8
   - spring_datasource_username=root
   - spring_datasource_password=123456

 apollo-portal:
  container_name: apollo-portal
  build: apollo-portal/src/main/docker/
  image: apollo-portal
  ports:
   - "9182:8070"
  depends_on:
   - apollo-adminservice
  volumes:
   - "/opt/logs/100003173"
  environment:
   - spring_datasource_url=jdbc:mysql://192.168.31.136:3306/ApolloPortalDB?characterEncoding=utf8
   - spring_datasource_username=root
   - spring_datasource_password=123456

這里注意兩點(diǎn):

1.在這里,我將原本的8080,8070,8090端口分別映射到9180,9181,9182端口,因?yàn)?080等端口是常用端口,可能會(huì)和其他項(xiàng)目發(fā)生沖突。

2.記得修改mysql的連接地址

講一下,這里可能有人會(huì)問為什么不用apollo項(xiàng)目中提供的quickstart-docker腳本,因?yàn)椋?/p>

在quickstart-docker中,apollo開源項(xiàng)目組為了減少部署操作,內(nèi)置了mysql等一系列配置,我們?cè)谑褂玫臅r(shí)候肯定不會(huì)使用內(nèi)置的東西,我們希望將數(shù)據(jù)存在我們自己的mysql數(shù)據(jù)庫中。還有就是quickstart-docker是為了我們方便演示使用的

第四步

將第一步下載的三個(gè)zip文件分別復(fù)制到以下目錄中

<1>

<2>

<3>

注意:

這三個(gè)目錄分別對(duì)應(yīng)apollo-adminservice,apollo-configservice,apollo-portal服務(wù),同時(shí)我們需要分別對(duì)這三個(gè)目錄下的Dockerfile文件進(jìn)行一下修改,打開Dockerfile文件

在這里,我們發(fā)現(xiàn)Dockerfile中指定的版本號(hào)是1.3.0-SNAPSHOT,但我們下載的zip包是1.2.0版本的,所以我們要分別對(duì)這三個(gè)Dockerfile進(jìn)行版本號(hào)修改,修改好的文件如下:

第五步

登錄mysql,導(dǎo)入下面文件夾中sql文件,進(jìn)行數(shù)據(jù)庫初始化

導(dǎo)入成功后,看到多了兩個(gè)數(shù)據(jù)庫

第六步

將整個(gè)項(xiàng)目apollo文件夾打包成zip文件,使用ftp或scp命令將文件上傳到centos7服務(wù)器中,在服務(wù)器上執(zhí)行以下命令

unzip apollo.zip
cd apollo
docker-compose up -d

然后看到命令輸出

就表示這三個(gè)docker容器已創(chuàng)建成功

使用

docker ps -a

查看docker服務(wù)

發(fā)現(xiàn)已成功運(yùn)行,現(xiàn)在打開瀏覽器,輸入

http://0.0.0.0:9182

就可以看到Apollo的后臺(tái)管理頁面了

第七步

在第六步時(shí),雖然部署完成但是這里有兩個(gè)地方需要修改,否則會(huì)報(bào)錯(cuò)

1.進(jìn)入apollo-portal容器

修改apollo-env環(huán)境變量

local.meta=http://localhost:9180
dev.meta=http://localhost:9180
fat.meta=http://localhost:9180
uat.meta=http://localhost:9180
lpt.meta=${lpt_meta}
pro.meta=http://localhost:9180

2.修改數(shù)據(jù)庫ApolloConfigDB的ServerConfig表中的eureka.service.url字段

http://localhost:9180/eureka/

修改完成后重啟apollo的三個(gè)容器即可

注意:

默認(rèn)賬號(hào)是apollo

默認(rèn)密碼admin

登錄apollo后,打開系統(tǒng)信息頁,可以看到這里有個(gè)Home Page Url,因?yàn)槲覀兪窃赿ocker中部署的,所以這個(gè)地方顯示的IP地址是有問題的,它的IP地址是Docker容器中的默認(rèn)IP地址,這個(gè)地址是有問題的,因?yàn)槲覀冊(cè)诩傻巾?xiàng)目中的時(shí)候,訪問的是服務(wù)器IP,所以Docker容器中的IP地址是訪問不了的,集成的時(shí)候就發(fā)現(xiàn)讀取不了apollo的配置

官方有給出HomePageUrl的修改方法,但測(cè)試發(fā)現(xiàn)還是有問題的

官方的解決方案

在第3條

這里不建議直接修改HomePageUrl,最好的解決辦法如下:

在Application中添加以下代碼

static{
  System.setProperty("Dapollo.configService","http://192.168.X.X")
}

到此這篇關(guān)于CentOS7使用docker部署Apollo配置中心的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)docker部署Apollo配置中心內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

標(biāo)簽:齊齊哈爾 運(yùn)城 拉薩 亳州 澳門 烏海 嘉興 衡陽

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《CentOS7使用docker部署Apollo配置中心的實(shí)現(xiàn)》,本文關(guān)鍵詞  CentOS7,使用,docker,部署,Apollo,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《CentOS7使用docker部署Apollo配置中心的實(shí)現(xiàn)》相關(guān)的同類信息!
  • 本頁收集關(guān)于CentOS7使用docker部署Apollo配置中心的實(shí)現(xiàn)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    浦城县| 汶上县| 牙克石市| 神木县| 东兰县| 沾益县| 瓮安县| 新郑市| 玉龙| 镇雄县| 鸡东县| 彭水| 南城县| 平凉市| 浦江县| 镇远县| 舟山市| 当阳市| 安宁市| 黄陵县| 卢湾区| 孙吴县| 湖州市| 长沙市| 招远市| 广丰县| 镇平县| 鄢陵县| 孟州市| 兴化市| 团风县| 浪卡子县| 达拉特旗| 齐河县| 肥乡县| 宾川县| 牡丹江市| 商水县| 曲靖市| 麻阳| 兰坪|