快速安裝 服務器之Apollo單機部署

部署Apolloapollo單機部署(快速安裝)Apollo官網:https://www.apolloconfig.com/#/zh/deployment/quick-start-docker官網單機部署的方式分為兩種:普通部署和docker部署 。
普通部署需要安裝MySQLJava環境 。Apollo服務端共需要兩個數據庫:ApolloPortalDB(apollo頁面)和ApolloConfigDB(apollo使用的),把數據庫、表的創建和樣例數據都分別準備了sql文件,只需要導入數據庫即可 。

快速安裝 服務器之Apollo單機部署

文章插圖
然后建立數據庫連接,進入到快速包下面(apollo-quick-start),下面有demo.sh,進行編輯:將對應的數據庫名和地址修改成自己的 。
快速安裝 服務器之Apollo單機部署

文章插圖
在啟動服務之前需要確認8070、8080、8090端口未被占用,然后直接啟動./demo.sh
==== starting service ====Service logging file is ./service/apollo-service.logStarted [10768]Waiting for config service startup.......Config service started. You may visit http://localhost:8080 for service status now!Waiting for admin service startup....Admin service started==== starting portal ====Portal logging file is ./portal/apollo-portal.logStarted [10846]Waiting for portal startup......Portal started. You can visit http://localhost:8070 now!首先會啟動erueka服務 , 然后啟動portal 配置中心,最后訪問[http://服務器外網地址:8070](http://服務器外網地址:8070)即可;賬號:apollo,密碼:admin;具體如下圖所示:
快速安裝 服務器之Apollo單機部署

文章插圖
快速安裝 服務器之Apollo單機部署

文章插圖
docker部署基于上述環境,我們暫停demo.sh的執行:./demo.sh stop,在快速包中(apollo-quick-start)使用docker-compose up運行;
快速安裝 服務器之Apollo單機部署

文章插圖
SpringBoot集成Apollo這一步就是個坑,創建SpringBoot不多說,在maven倉庫找到客戶端;
快速安裝 服務器之Apollo單機部署

文章插圖
取最新版即可(截至2022年10月21日):
<!-- https://mvnrepository.com/artifact/com.ctrip.framework.apollo/apollo-client --><dependency><groupId>com.ctrip.framework.apollo</groupId><artifactId>apollo-client</artifactId><version>2.0.1</version></dependency>錯誤配置:
server:port: 8000app:id: apolloTestapollo:bootstrap:enabled: truemeta: http://服務器外網地址:8080在啟動類上開啟apollo:@EnableApolloConfig
@SpringBootApplication@EnableApolloConfigpublic class ApolloTestApplication {public static void main(String[] args) {SpringApplication.run(ApolloTestApplication.class, args);}}在服務器部署的Apollo會有問題,客戶端請求的時候地址會出現服務器的內網地址,那肯定是訪問不到的 。
快速安裝 服務器之Apollo單機部署

文章插圖
所以我們進行以下設置:指定應用的AppId
app.id=apolloTest在服務啟動設置上配置apollo參數;
-Dapollo.configService=http://服務器外網地址:8080
快速安裝 服務器之Apollo單機部署

文章插圖
需要對應起來 , 新增配置key:service,value:hello world,并且是已發布
快速安裝 服務器之Apollo單機部署

文章插圖
public class TestController {@Value(value = "https://www.huyubaike.com/biancheng/${service}")private String name;@RequestMapping("test")public String test(){return "hello world -->"+name;}}【快速安裝 服務器之Apollo單機部署】

    推薦閱讀