为帮助快速上手Apollo配置中心,以下提供本地环境部署、启动及使用的详细步骤。本文档基于Quick Start模式,适用于本地测试;生产环境部署需参考Apollo分布式部署指南。若熟悉Docker,也可通过Apollo Quick Start Docker部署快速部署。
注意:Quick Start需bash环境,Windows用户建议安装Git Bash,或通过IDE启动(详见Apollo开发指南)。
示例输出(版本符合即可):shjava -version
Windows用户需确保已配置shjava version "1.8.0_74" Java(TM) SE Runtime Environment (build 1.8.0_74-b02) Java HotSpot(TM) 64-Bit Server VM (build 25.74-b02, mixed mode)
JAVA_HOME环境变量。版本要求:5.6.5及以上(因Apollo表结构对timestamp使用多default声明,需此版本以上支持)
检查方法:连接MySQL后执行以下SQL
sqlSHOW VARIABLES WHERE Variable_name = 'version';
示例结果(版本符合即可):
| Variable_name | Value |
|---|---|
| version | 5.7.11 |
安装包已包含依赖及内置Tomcat,无需手动编译打包,直接下载使用即可(大小约50M)。
apollo-quick-start.zip若需修改源码后重新打包,步骤如下:
apollo-configservice、apollo-adminservice、apollo-portal的pom.xml中spring-boot-maven-plugin和maven-assembly-plugin插件shmvn clean package -pl apollo-assembly -am -DskipTests=true
apollo-assembly/target下的jar包,重命名为apollo-all-in-one.jarApollo服务端需两个数据库:ApolloPortalDB(门户数据库)和ApolloConfigDB(配置数据库)。以下为数据库创建及验证步骤。
导入SQL文件:通过MySQL客户端导入sql/apolloportaldb.sql(文件路径为安装包内或项目仓库中)
示例命令(MySQL原生客户端):
sqlsource /本地路径/sql/apolloportaldb.sql
验证导入:执行以下SQL,若返回结果含SampleApp则成功
sqlselect `Id`, `AppId`, `Name` from ApolloPortalDB.App;
预期结果:
| Id | AppId | Name |
|---|---|---|
| 1 | SampleApp | Sample App |
导入SQL文件:通过MySQL客户端导入sql/apolloconfigdb.sql
示例命令:
sqlsource /本地路径/sql/apolloconfigdb.sql
验证导入:执行以下SQL,若返回结果含timeout配置则成功
sqlselect `NamespaceId`, `Key`, `Value`, `Comment` from ApolloConfigDB.Item;
预期结果:
| NamespaceId | Key | Value | Comment |
|---|---|---|---|
| 1 | timeout | 100 | sample timeout配置 |
修改安装包中的demo.sh文件,配置数据库连接串(确保用户有读写权限)。
sh# ApolloConfigDB连接信息 apollo_config_db_url=jdbc:mysql://localhost:3306/ApolloConfigDB?characterEncoding=utf8 apollo_config_db_username=数据库用户名 apollo_config_db_password=数据库密码(无密码则留空) # ApolloPortalDB连接信息 apollo_portal_db_url=jdbc:mysql://localhost:3306/ApolloPortalDB?characterEncoding=utf8 apollo_portal_db_username=数据库用户名 apollo_portal_db_password=数据库密码(无密码则留空)
Quick Start需占用本地3个端口(8070、8080、8090),启动前需确保端口未被占用。
shlsof -i:8070 # 检查8070端口 lsof -i:8080 # 检查8080端口 lsof -i:8090 # 检查8090端口
在安装包目录下执行启动命令:
sh./demo.sh start
若输出以下内容,说明服务启动完成:
sh==== starting service ==== Service logging file is ./service/apollo-service.log Started [***] Waiting for config service startup....... Config service started. You may visit [***] for service status now! Waiting for admin service startup.... Admin service started ==== starting portal ==== Portal logging file is ./portal/apollo-portal.log Started [***] Waiting for portal startup...... Portal started. You can visit [***] now!
若启动失败,可通过以下日志文件定位问题:
./service/apollo-service.log./portal/apollo-portal.logeureka注册失败日志(如Connection refused),属正常现象(服务需向自身注册,启动初期未就绪,后续会重试成功)。apollo,密码adminSampleApp进入配置界面,可见默认配置timeout=100客户端程序用于演示配置获取及动态更新,步骤如下:
sh./demo.sh client
timeout,输出如下即成功获取配置:
sh> timeout > [SimpleApolloConfigDemo] Loading key : timeout with value: 100
SampleApp配置界面,点击timeout项的“编辑”按钮,修改值为200并提交配置发布后,客户端会实时监听变化并输出日志:
sh[SimpleApolloConfigDemo] Changes for namespace application [SimpleApolloConfigDemo] Change - key: timeout, oldValue: 100, newValue: 200, changeType: MODIFIED
再次输入timeout,客户端返回更新后的值:
sh> timeout > [SimpleApolloConfigDemo] Loading key : timeout with value: 200
新应用接入可参考Apollo Java应用接入指南,完成依赖引入、配置等步骤。
client/META-INF/app.properties,将app.id改为新创建的项目AppId
propertiesapp.id=你的新项目AppId
./demo.sh client,按提示输入key即可获取自定义项目配置。来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429