以docker-compose方式部署apollo。最新版本:1.7.1
- 主機說明:
系統:CentOS 7.8
Meta Server/Config Service/Admin Service/Portal Server/MySQL 192.168.30.131
- 資料庫準備:
首先部署mysql,建立使用者并設定密碼,這裡是
root
/
123456789
。
cd /software
git clone https://github.com/ctripcorp/apollo.git
mysql -uroot -p123456789 < apollo/scripts/sql/apolloportaldb.sql
mysql -uroot -p123456789 < apollo/scripts/sql/apolloconfigdb.sql
- 部署:
vim docker-compose.yaml
version: '3.7'
services:
apollo-configservice:
container_name: apollo-configservice
image: apolloconfig/apollo-configservice
volumes:
- type: volume
source: logs
target: /opt/logs
ports:
- "8080"
environment:
- SPRING_DATASOURCE_URL=jdbc:mysql://192.168.30.131:3306/ApolloConfigDB?characterEncoding=utf8
- SPRING_DATASOURCE_USERNAME=root
- SPRING_DATASOURCE_PASSWORD=123456789
restart: always
network_mode: host
apollo-adminservice:
depends_on:
- apollo-configservice
container_name: apollo-adminservice
image: apolloconfig/apollo-adminservice
volumes:
- type: volume
source: logs
target: /opt/logs
ports:
- "8090"
environment:
- SPRING_DATASOURCE_URL=jdbc:mysql://192.168.30.131:3306/ApolloConfigDB?characterEncoding=utf8
- SPRING_DATASOURCE_USERNAME=root
- SPRING_DATASOURCE_PASSWORD=123456789
restart: always
network_mode: host
apollo-portal:
depends_on:
- apollo-adminservice
container_name: apollo-portal
image: apolloconfig/apollo-portal
volumes:
- type: volume
source: logs
target: /opt/logs
ports:
- "8070"
environment:
- SPRING_DATASOURCE_URL=jdbc:mysql://192.168.30.131:3306/ApolloPortalDB?characterEncoding=utf8
- SPRING_DATASOURCE_USERNAME=root
- SPRING_DATASOURCE_PASSWORD=123456789
- APOLLO_PORTAL_ENVS=dev
- DEV_META=http://192.168.30.131:8080
restart: always
network_mode: host
volumes:
logs:
driver: local
driver_opts:
type: none
o: bind
device: /tmp/logs
參數說明:
SPRING_DATASOURCE_URL: 對應環境ApolloPortalDB的位址
SPRING_DATASOURCE_USERNAME: 對應環境ApolloPortalDB的使用者名
SPRING_DATASOURCE_PASSWORD: 對應環境ApolloPortalDB的密碼
APOLLO_PORTAL_ENVS(可選): 對應ApolloPortalDB中的apollo.portal.envs配置項,如果沒有在資料庫中配置的話,可以通過此環境參數配置
DEV_META/PRO_META(可選): 配置對應環境的Meta Service位址,以${ENV}_META命名,如果ApolloPortalDB中配置了apollo.portal.meta.servers,則以apollo.portal.meta.servers中的配置為準
docker-compose up -d
docker-compose ps
Name Command State Ports
--------------------------------------------------------------------------------------
apollo-adminservice /apollo-adminservice/scrip ... Up 0.0.0.0:8090->8090/tcp
apollo-configservice /apollo-configservice/scri ... Up 0.0.0.0:8080->8080/tcp
apollo-portal /apollo-portal/scripts/sta ... Up 0.0.0.0:8070->8070/tcp
- 通路ui:
通路
192.168.30.131:8070
,賬号/密碼:
apollo
/
admin
。
docker-compose方式部署apollo完成。已存放至個人github:docker-compose