apollo 的原理和介绍这里就不做说明了,看到该文章的应该你已经了解了,到部署阶段了。
文本基于 apollo 1.4.0 版本。
步骤
一、导入数据库脚本
脚本包含 portalDB和configDB: https://github.com/ctripcorp/apollo/tree/v1.4.0/scripts/db/migration
这两个DB的作用,还是详见官方。
二、配置表中的 eureka 地址
打开ApolloConfigDB
的ServerConfig
表,修改key 为 eureka.service.url
的值为 你的IP地址和端口(对应下面的docker-compose.yaml 中的 configservice 的端口)
。
例如我配置的就是 http://192.168.1.164:6166/eureka/
三、docker-compose 文件内容
docker-compose.yml 文件内容如下:
version: '3'
services:
apollo-portal:
image: docker.io/xzxiaoshan/apollo-portal:1.4.0
container_name: apollo-portal
network_mode: "host"
environment:
SERVER_PORT: 6165
# DataSource Info
DS_URL: "jdbc:mysql://192.168.1.164:3306/ApolloPortalDB?characterEncoding=utf8"
DS_USERNAME: "root"
DS_PASSWORD: "root"
# Environmental variable declaration (meta server url, different environments should have different meta server addresses)
DEV_META: "http://192.168.1.164:6166"
FAT_META: ""
UAT_META: ""
LPT_META: ""
PRO_META: ""
depends_on:
- apollo-adminservice
logging:
driver: "json-file"
options:
max-size: "200k"
max-file: "10"
apollo-configservice:
image: docker.io/xzxiaoshan/apollo-configservice:1.4.0
container_name: apollo-configservice
network_mode: "host"
environment:
SERVER_PORT: 6166
# DataSource Info
DS_URL: "jdbc:mysql://192.168.1.164:3306/ApolloConfigDB?characterEncoding=utf8"
DS_USERNAME: "root"
DS_PASSWORD: "root"
logging:
driver: "json-file"
options:
max-size: "200k"
max-file: "10"
apollo-adminservice:
image: docker.io/xzxiaoshan/apollo-adminservice:1.4.0
container_name: apollo-adminservice
network_mode: "host"
environment:
SERVER_PORT: 6167
# DataSource Info
DS_URL: "jdbc:mysql://192.168.1.164:3306/ApolloConfigDB?characterEncoding=utf8"
DS_USERNAME: "root"
DS_PASSWORD: "root"
depends_on:
- apollo-configservice
logging:
driver: "json-file"
options:
max-size: "200k"
max-file: "10"
官方 github 地址:https://github.com/ctripcorp/apollo
(END)