graviteeio/javaGravitee.io 是一款功能全面的开源API管理解决方案,旨在简化API的全生命周期管理。该Docker镜像封装了Gravitee.io的核心组件,提供开箱即用的API管理能力,适用于各类需要对API进行统一治理、监控和安全管控的场景。
bash# 启动Gravitee.io管理UI(示例端口映射) docker run -d -p 8083:8083 --name gravitee-management-ui graviteeio/apim-management-ui # 启动Gravitee.io网关(需配合管理API和数据库) docker run -d -p 8082:8082 --name gravitee-gateway graviteeio/apim-gateway
创建docker-compose.yml文件,配置完整组件栈(管理API、管理UI、网关、数据库等):
yamlversion: '3' services: mongodb: image: mongo:4.4 volumes: - mongodb-data:/data/db ports: - "27017:27017" elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:7.14.0 environment: - discovery.type=single-node - "ES_JAVA_OPTS=-Xms512m -Xmx512m" ports: - "9200:9200" gravitee-management-api: image: graviteeio/apim-management-api depends_on: - mongodb - elasticsearch environment: - gravitee_management_mongodb_uri=mongodb://mongodb:27017/gravitee - gravitee_analytics_elasticsearch_uri=[***] ports: - "8083:8083" gravitee-management-ui: image: graviteeio/apim-management-ui ports: - "80:80" depends_on: - gravitee-management-api gravitee-gateway: image: graviteeio/apim-gateway depends_on: - mongodb - elasticsearch environment: - gravitee_gateway_mongodb_uri=mongodb://mongodb:27017/gravitee - gravitee_analytics_elasticsearch_uri=[***] ports: - "8082:8082" volumes: mongodb-data:
启动命令:docker-compose up -d
| 环境变量 | 描述 | 默认值 |
|---|---|---|
gravitee_management_mongodb_uri | MongoDB连接地址 | mongodb://localhost:27017/gravitee |
gravitee_analytics_elasticsearch_uri | Elasticsearch连接地址 | http://localhost:9200 |
GRAVITEE_SECURITY_JWT_SECRET | JWT认证密钥 | 自动生成(生产环境需自定义) |
gravitee_server_port | 服务端口 | 8083(管理API)、8082(网关) |
注:完整配置参数请参考Gravitee.io官方文档。
部署完成后,可通过以下地址访问对应组件:
http://<docker-host-ip>:80(默认管理员账户:admin/admin)http://<docker-host-ip>:8083/management/organizations/DEFAULT/environments/DEFAULThttp://<docker-host-ip>:8082(用于API请求转发)首次登录后,建议修改默认密码并根据业务需求配置API策略、限流规则及安全设置。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务