执行步骤如下:
1.准备mysql的docker镜像,并在docker运行.
2.准备eureka-server项目,并在docker运行.
3.从git仓库下载apollo,修改对应配置,并发布到docker.
4.到此,apollo可使用.
1.准备mysql的docker镜像,并在docker运行.
2.准备eureka-server项目,并在docker运行.
3.从git仓库下载apollo,修改对应配置,并发布到docker
1.下载apollo源码,修改如下配置文件:
apollo-configservice/src/main/resources/bootstrap.yml
eureka:
instance:
status-page-url-path: /info
health-check-url-path: /health
preferIpAddress: true
ip-address: ${docker-apollo}
client:
serviceUrl:
defaultZone: http://docker-apollo:8080/eureka/
healthcheck:
enabled: true
eurekaServiceUrlPollIntervalSeconds: 60
management:
health:
status:
order: DOWN, OUT_OF_SERVICE, UNKNOWN, UP
apollo-adminservice/src/main/resources/bootstrap.yml
eureka:
instance:
status-page-url-path: /info
health-check-url-path: /health
preferIpAddress: true
ip-address: ${docker-apollo}
client:
serviceUrl:
defaultZone: http://docker-apollo:8080/eureka/
healthcheck:
enabled: true
eurekaServiceUrlPollIntervalSeconds: 60
management:
health:
status:
order: DOWN, OUT_OF_SERVICE, UNKNOWN, UP
scripts/build.sh
修改数据库链接,修改apollo访问地址
apollo_config_db_url=jdbc:mysql://docker-mysql:3306/ApolloConfigDB?characterEncoding=utf8
apollo_config_db_username=root
apollo_config_db_password=123456
apollo_portal_db_url=jdbc:mysql://docker-mysql:3306/ApolloPortalDB?characterEncoding=utf8
apollo_portal_db_username=root
apollo_portal_db_password=123456
dev_meta=http://docker-apollo:8080
fat_meta=http://docker-apollo:8080
uat_meta=http://docker-apollo:8080
pro_meta=http://docker-apollo:8080
执行构建命令:
./build.sh
构建docker镜像
复制编译之后的zip文件到Dockerfile所在目录,执行如下命令:
docker build -t docker-apollo-config .
docker build -t docker-apollo-admin .
docker build -t docker-apollo-portal .
在docker中运行实例
docker run \
--add-host=docker-mysql:192.168.16.55 \
--add-host=docker-apollo:192.168.16.55 \
--env docker-apollo=192.168.16.55 \
-p 8080:8080 -d -v $PWD/logs:/opt/logs \
--name docker-apollo-config docker-apollo-config
docker run \
--add-host=docker-mysql:192.168.16.55 \
--add-host=docker-apollo:192.168.16.55 \
--env docker-apollo=192.168.16.55 \
-p 8090:8090 -d -v $PWD/logs:/opt/logs \
--name docker-apollo-admin docker-apollo-admin
docker run \
--add-host=docker-mysql:192.168.16.55 \
--add-host=docker-apollo:192.168.16.55 \
--env docker-apollo=192.168.16.55 \
-p 8070:8070 -d -v $PWD/logs:/opt/logs \
--name docker-apollo-portal docker-apollo-portal
4.补充说明
bootstrap.yml文件中
${docker-apollo} 占位符,是用于被环境变量替换的配置, 在docker run的时候,以下配置起作用:
--env docker-apollo=192.168.16.55
docker-apollo 配置,在docker run的时候,以下配置起作用:
--add-host=docker-apollo:192.168.16.55
数据库链接, 在docker run的时候,以下配置起作用:
--add-host=docker-mysql:192.168.16.55