1. 获取源代码
从git上clone [apollo项目]
2. 配置数据库
启动一个mySql数据库
导入 script/sql/ 文件夹下面的apolloconfigdb.sql 和 apolloportaldb.sql
3.打包编译
找到路径 scripts/build.bat(.sh)。windows(linux)
修改数据库连接信息
修改完后运行
4. 准备镜像文件
找到apollo-adminservice + apollo-configservice + apollo-portal 打好的包
.jar和相应的.github.zip【target目录下】 还有 \src\main\docker 目录下的Dockerfile文件
目录结构如下
- – apollo-adminservice/ *.jar、*.github.zip、Dockerfile
- – apollo-portal/ *.jar、*.github.zip、Dockerfile
- – apollo-configservice/ *.jar、*.github.zip、Dockerfile
- – docker-compose-apollo.yml
修改Dockerfile文件:
# portal 使用ApolloPortalDB 其它使用ApolloConfigDB
ENV DS_URL "jdbc:mysql://DBIp:3306/ApolloPortalDB?characterEncoding=utf8"
ENV DS_USERNAME "FillInCorrectUser"
ENV DS_PASSWORD "FillInCorrectPassword"
在portal 的Docker文件中,还需要修改一下内容:【未改动新建项目时会出现:系统出错,请重试或联系系统负责人的错误】
# Environmental variable declaration (meta server url, different environments should have different meta server addresses)
ENV DEV_META "http://10.91.0.114:8080"
ENV FAT_META "http://10.91.0.114:8180"
ENV UAT_META "http://10.91.0.114:8280"
ENV LPT_META "${lpt_meta}"
ENV PRO_META "http://10.91.0.114:18080"
5. docker-compose-apollo.yml
注意:需要修改 image 名称按照 jar包修改版本号
修改 environment 下面的数据库连接信息
version: "2"
services:
apollo-configservice: ##容器服务名
container_name: apollo-configservice ##容器名
build: apollo-configservice/ ##Dockerfile路径
image: apollo-configservice:1.4.0 ##镜像名
network_mode: host ##网络设置
ports:
- "8080:8080"
volumes:
- "/docker/apollo/logs/100003171:/opt/logs/100003171" ##将/opt/logs/100003171目录挂载到宿主机的/docker/apollo/logs/100003171方便在宿主机上查看日志
environment:
- spring_datasource_url=jdbc:mysql://dbIp:3306/ApolloConfigDB?characterEncoding=utf8
- spring_datasource_username=root
- spring_datasource_password=root
apollo-adminservice:
container_name: apollo-adminservice
build: apollo-adminservice/
image: apollo-adminservice:1.4.0
network_mode: host
#net: "host"
ports:
- "8090:8090"
depends_on:
- apollo-configservice
volumes:
- "/docker/apollo/logs/100003172:/opt/logs/100003172"
environment:
- spring_datasource_url=jdbc:mysql://dbIp:3306/ApolloConfigDB?characterEncoding=utf8
- spring_datasource_username=root
- spring_datasource_password=root
apollo-portal:
container_name: apollo-portal
build: apollo-portal/
image: apollo-portal:1.4.0
network_mode: host
#net: "host"
ports:
- "8070:8070"
depends_on:
- apollo-adminservice
volumes:
- "/docker/apollo/logs/100003173:/opt/logs/100003173"
environment:
- spring_datasource_url=jdbc:mysql://dbIp:3306/ApolloPortalDB?characterEncoding=utf8
- spring_datasource_username=root
- spring_datasource_password=123456
6. 启动运行
docker-compose up -d
2分钟后即可访问portal地址[http://portalIp:8070],使用apollo/admin进行登录
7. 停止运行
docker-compose down
网友评论