
pivotalservices/cf-mgmtcf-mgmt Docker镜像是一个预打包了cf-mgmt二进制工具的容器化解决方案。cf-mgmt是Cloud Foundry生态中的核心管理工具,旨在通过配置文件驱动的方式,自动化完成Cloud Foundry(CF)环境的组织(Org)、空间(Space)、用户(User)、角色(Role)、配额(Quota)及安全组(Security Group)等资源的创建、配置与维护。该镜像简化了cf-mgmt的部署与依赖管理,支持在容器化环境中快速集成Cloud Foundry自动化运维流程。
cf create-org/cf set-space-role等命令,通过配置文件批量完成资源配置。从Docker Registry拉取镜像(假设镜像名称为cf-mgmt:latest,实际需替换为官方/私有仓库地址):
bashdocker pull cf-mgmt:latest
cf-mgmt配置目录(如./cf-mgmt-config),并编写主配置文件(config.yaml)及Org/Space定义文件。cf-mgmt子命令(如apply、diff、delete-orphans等)。配置文件需按固定目录结构组织,示例:
./cf-mgmt-config/ ├── config.yaml # 全局配置(CF连接信息、通用参数) ├── orgs/ # Org定义目录 │ ├── org1/ # Org名称(需与CF中一致) │ │ ├── config.yaml # Org级配置(配额、安全组等) │ │ └── spaces/ # Space定义目录 │ │ ├── space1/ # Space名称 │ │ │ └── config.yaml # Space级配置(配额、用户角色等) │ └── org2/ │ └── ... └── ldap/ # LDAP用户配置(可选) └── users.yaml
全局配置文件示例(定义CF连接信息及全局规则):
yaml# 基础CF连接配置 api_endpoint: "[***]" # CF API地址 username: "admin" # CF管理员用户名 password: "${CF_PASSWORD}" # 支持环境变量引用(推荐) skip_ssl_validation: false # 是否跳过SSL证书验证(生产环境不建议) # 全局行为配置 enable_delete: true # 是否允许自动删除未在配置中定义的资源 default_org_quota: "standard-quota" # 默认Org配额名称 default_space_quota: "dev-space-quota" # 默认Space配额名称
容器运行时可通过环境变量覆盖配置文件中的敏感信息(如CF密码),常用变量如下:
| 环境变量名 | 说明 | 默认值 |
|---|---|---|
CF_MGMT_CONFIG_PATH | 容器内配置文件根目录路径 | /cf-mgmt-config |
CF_API | CF API地址(覆盖config.yaml中的api_endpoint) | 无 |
CF_USERNAME | CF管理员用户名(覆盖config.yaml中的username) | 无 |
CF_PASSWORD | CF管理员密码(覆盖config.yaml中的password) | 无 |
SKIP_SSL_VALIDATION | 是否跳过SSL验证(覆盖config.yaml中的skip_ssl_validation) | false |
通过docker run执行cf-mgmt apply命令,应用配置文件到CF环境:
bashdocker run -it --rm \ -v $(pwd)/cf-mgmt-config:/cf-mgmt-config \ # 挂载本地配置目录 -e CF_PASSWORD="your-cf-admin-password" \ # 注入CF密码环境变量 cf-mgmt:latest \ apply # 执行配置应用命令(其他命令:diff、delete-orphans、export-config等)
通过docker-compose.yml定义服务,支持持久化配置和日志:
yamlversion: "3.8" services: cf-mgmt: image: cf-mgmt:latest volumes: - ./cf-mgmt-config:/cf-mgmt-config:ro # 只读挂载配置目录 - ./logs:/cf-mgmt-logs # 挂载日志目录 environment: - CF_API=[***] - CF_USERNAME=admin - CF_PASSWORD=${CF_PASSWORD} # 从宿主机环境变量读取密码 - CF_MGMT_CONFIG_PATH=/cf-mgmt-config command: apply --log-dir /cf-mgmt-logs # 指定日志输出目录
启动命令:
bashCF_PASSWORD="your-cf-admin-password" docker-compose up
chmod 755)。cf-mgmt官方文档)。apply前建议先运行diff命令(docker run ... cf-mgmt diff),确认配置变更范围。



manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务