Docker初学到实战(五)搭建Apollo配置服务

        Apollo配置中心的好处以及用法可以自行度娘,我这里记录的是怎么在Docker中安装。

Apollo配置服务共有三个服务组成:

 具体三个服务代表什么意思,可以自行度娘。

一、在安装这三个服务之前需要先建立两个数据库,用来存放Apollo的数据:

下载sql文件:https://github.com/ctripcorp/apollo/tree/master/scripts/docker-quick-start/sql

下载SQL文件后自行执行,这些SQL文件的内容就是创建相应的数据库和数据表和初始的数据类容。

注意:数据库不要自己手动创建,脚本会自动生成。

二、由于之前两章已经讲了两种方式拉取镜像和启动容器,这里我就不废话了,直接用代码这种方式启动容器。分别执行下面3段代码,启动三个容器(代码不能直接运行,需要修改对应内容):

docker run 
-p 8080:8080 
-e SPRING_DATASOURCE_URL="jdbc:mysql://数据库IP:3306/ApolloConfigDB?characterEncoding=utf8" 
-e SPRING_DATASOURCE_USERNAME=root 
-e SPRING_DATASOURCE_PASSWORD=123456 
-d 
-v /root/apollo/temp/logs:/opt/logs 
--name apollo-configservice 
--restart=always 
apolloconfig/apollo-configservice

docker run 
-p 8090:8090 
-e SPRING_DATASOURCE_URL="jdbc:mysql://数据库IP:3306/ApolloConfigDB?characterEncoding=utf8" 
-e SPRING_DATASOURCE_USERNAME=root 
-e SPRING_DATASOURCE_PASSWORD=123456 
-d 
-v /root/apollo/temp/logs:/opt/logs 
--name apollo-adminservice 
--restart=always 
apolloconfig/apollo-adminservice
docker run 
-p 8070:8070 
-e SPRING_DATASOURCE_URL="jdbc:mysql://数据库IP:3306/ApolloPortalDB?characterEncoding=utf8" 
-e SPRING_DATASOURCE_USERNAME=root 
-e SPRING_DATASOURCE_PASSWORD=123456 
-e APOLLO_PORTAL_ENVS=dev,pro 
-e DEV_META=http://服务器公网IP:8080 
-e PRO_META=http://服务器公网IP:8080 
-d -v /root/apollo/temp/logs:/opt/logs 
--name apollo-portal 
--restart=always 
apolloconfig/apollo-portal

注意:上面代码中具体的命令参数可以去查看DockerHub上对应镜像的说明,也可以自己度娘。

数据库IP:可以是内网也可以是公网,如果数据库的容器和Apollo的容器在同一个Docker服务下可以直接使用容器之间的内网IP,可以通过Portainer查看每个容器自己的内网IP,但问题是如果数据库的容器被销毁后新建的话容器IP可能会变,引起很多问题。

服务器公网IP:一个是开发环境,一个是生产环境,当然现在我们只有一台服务器,那就一样的就行。

eureka服务IP:如果登陆后出现错误,请联系管理员之类的,可以检查一下数据表中该配置项,应该是apollo-configservice服务的地址,如果修改后记得重启一下三个服务,然后多等一会在试试会不会有同样的错误,这里修改后感觉要过几分钟才有效。

三、到Portainer查看三个服务是否正常,也可以在物理机上用Docker ps命令查看:

运行正常后,在物理机开放对应的端口:

然后通过公网IP 加端口8070(xxx.xxx.xxx.xxx:8070)就可以访问:

 出现该界面表示正常,通过默认用户登录后自行修改用户密码:

 

Apollo配置中心的使用方式自行度娘,我这里配置了两个应用,因为后面我们写了两个服务,一个是后端API,一个是前端网站,图下图:

后端API配置了连接数据库的字符串以及一些其他配置项: 

前端Web就配置了一个API的地址: 

到这里,我们就安装好apollo了。

补充:大体流程就是如上所描述,但是大家一定要放平心态,就算教程再详细,安装过程总会出现那么一些不尽如人意的问题,遇到问题咱们解决就行了。曾经有人跟我说过:“没有解决不来的问题,如果有,那就是方法不对,换一个方法试试”。

下一章我们讲打包自己的程序为Docker镜像

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值