1,现在centOS7中安装git
yum install -y git2,克隆apollo项目
git clone https://github.com/ctripcorp/apollo.git3,执行镜像,在docker-quick-start目录下有docker-compose文件
docker-compose up若未安装docker-compose可以参考第二章4,内置数据库,端口13306,root密码为空 5,开放端口,注意要开放13306端口,后面连数据库需要用到 apollo一共使用了8070 8080 8090三个端口,8070是portal使用的,需要放开防火墙
firewall-cmd --zone=public --add-port=8070/tcp --permanent firewall-cmd --zone=public --add-port=8080/tcp --permanent firewall-cmd --zone=public --add-port=8090/tcp --permanent firewall-cmd --zone=public --add-port=13306/tcp --permanent firewall-cmd --reload firewall-cmd --zone=public --list-ports 查看端口开放情况 systemctl stop firewalld.service关闭防火墙1,下载
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose2,赋权
sudo chmod +x /usr/local/bin/docker-compose3,软连接
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose4,查看
docker-compose --version其他功能可以直接输入docker-compose查看提示,如kill、rm、restart等。
1,原理可以参见博客
https://www.cnblogs.com/zklight/p/12974872.html
2,进入apollo-quick-start的对应目录,修改文件docker-compose。添加配置 在container_name: apollo-quick-start后面添加配置,注意格式
environment: EUREKA_INSTANCE_IP_ADDRESS: '192.168.0.151'在ports:后面添加配置,注意对齐
- "8090:8090"在- ./sql:/docker-entrypoint-initdb.d后面添加配置,注意对齐
- ./data:/var/lib/mysql3,修改数据库配置 将ApolloConfigDB库ServerConfig表的Key=eureka.service.url项的Value改为http://【宿主机IP】:8080/eureka/ 将ApolloPortalDB库ServerConfig表中Key=apollo.portal.meta.servers项的value改为{"DEV":"http://【宿主机IP】:8080"} ps:推荐使用DataGrip2020.2,连接各种类型数据库方便
1,本地项目使用的是Gradle6.3+springBoot2.3.4.RELEASE+Mybatis。需要添加apollo的启动项依赖和apollo客户端 //apollo使用
implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client:2.2.5.RELEASE' implementation 'com.ctrip.framework.apollo:apollo-client:1.0.0'2,在启动文件XXXApplication上添加注解启用服务发现及apollo配置
@EnableDiscoveryClient @EnableApolloConfig //@SpringBootApplication public class XXXApplication { }3,在resources文件夹下,需要新建META-INF文件下,该文件夹下新建app.properties。输入以下配置
#resources/META-INF/app.properties文件。默认配置读取位置 app.id=SampleApp apollo.cacheDir=/opt/data/apollo-config apollo.meta=http://192.168.0.155:8080#注意是服务注册的主机,就是docker宿主机 apollo.bootstrap.enabled=true apollo.bootstrap.eagerLoad.enabled=true4,初次安装默认有配置timeout=100。可以按照以下案例获取,更过使用方式可搜索csdn博客。
Config config = ConfigService.getAppConfig(); String key = "timeout"; String defaultValue = "1"; String value = config.getProperty(key,defaultValue);#100