akamai/shell本镜像基于 Akamai CLI 构建,预安装了大多数常用 Akamai CLI 功能包及第三方实用工具(如 HTTPie、Terraform),旨在提供开箱即用的 Akamai 服务管理环境,简化 Akamai 相关操作的配置与执行流程。
property、dns、edgeworkers、iam、gtm 等常用服务管理模块从 Docker 仓库拉取镜像(假设镜像名称为 akamai/cli:preinstalled):
bashdocker pull akamai/cli:preinstalled
启动容器并进入交互式终端,直接执行 Akamai CLI 命令:
bashdocker run -it --rm akamai/cli:preinstalled sh
进入容器后验证 CLI 可用性:
bashakamai --version # 查看 Akamai CLI 版本 akamai property --help # 查看 property 模块帮助 http --version # 验证 HTTPie 安装 terraform --version # 验证 Terraform 安装
无需进入容器,直接在主机执行 CLI 命令(适用于脚本或自动化场景):
bash# 示例:查询 Akamai Property 配置 docker run --rm akamai/cli:preinstalled akamai property get --propertyId *** --version 1
通过环境变量注入 Akamai API 凭证及运行时配置,避免敏感信息硬编码。
| 环境变量名 | 描述 | 是否必填 | 示例值 |
|---|---|---|---|
AKAMAI_EDGERC | Base64 编码的 edgerc 配置文件内容(包含 API 密钥与主机信息) | 是 | LS0tLS1CRUdJTiBFRkdFU0... |
AKAMAI_EDGERC_SECTION | edgerc 文件中使用的配置段名称(默认:default) | 否 | production |
AKAMAI_CLI_HOME | CLI 配置文件存储路径(默认:/root/.akamai-cli) | 否 | /app/akamai-cli |
HTTP_PROXY | 代理服务器地址(如需通过代理访问 Akamai API) | 否 | [***] |
通过环境变量传递 edgerc 凭证:
bash# 1. 将本地 edgerc 文件编码为 Base64 EDGERC_BASE64=$(base64 -w 0 ~/.edgerc) # 2. 运行容器时注入环境变量 docker run --rm \ -e AKAMAI_EDGERC="${EDGERC_BASE64}" \ -e AKAMAI_EDGERC_SECTION="production" \ akamai/cli:preinstalled \ akamai dns zone list
通过挂载主机目录或文件,实现配置持久化或本地脚本/资源复用:
bash# 挂载本地 edgerc 文件到容器默认路径(推荐,避免 Base64 编码) docker run -it --rm \ -v ~/.edgerc:/root/.edgerc:ro \ # 只读挂载本地凭证文件 -v $(pwd)/scripts:/scripts \ # 挂载本地脚本目录 akamai/cli:preinstalled \ sh -c "cd /scripts && ./deploy-akamai.sh" # 执行本地脚本
创建 docker-compose.yml 配置文件,整合 Akamai CLI 到多容器应用:
yamlversion: '3.8' services: akamai-cli: image: akamai/cli:preinstalled environment: - AKAMAI_EDGERC_SECTION=staging volumes: - ~/.edgerc:/root/.edgerc:ro # 挂载本地凭证 - ./terraform:/terraform # 挂载 Terraform 配置目录 working_dir: /terraform command: ["terraform", "apply"] # 启动时执行 Terraform 部署
启动服务:
bashdocker-compose up
edgerc 文件包含 API 密钥,建议通过挂载文件(而非环境变量)传递,并设置文件权限为只读(ro)。:v1.2.3),避免自动更新导致兼容性问题。--rm 参数确保临时容器退出后自动删除,避免磁盘空间占用。manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务