关于 zeabur-service-exec
zeabur-service-exec 是一项用于在运行中的 Zeabur 服务容器内执行命令的技能。它通过 Zeabur CLI 支持检查文件和环境变量、测试连通性及执行一次性数据库操作。
主要功能
- 01在服务容器中执行命令
- 02检查文件与环境变量
- 03执行数据库查询和更新
- 04按 ID 或名称选择服务
- 05指定目标环境
适用场景
- 01调试时检查服务文件
- 02查看容器环境变量
- 03执行一次性数据库查询
- 04从容器内测试网络连通性
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ zeabur/ agent-skills --skill zeabur-service-exec安装后在 Claude Code 中输入/zeabur-service-exec确认已加载。
详细介绍
Zeabur 服务 Exec
始终使用
npx zeabur@latest调用 Zeabur CLI。 切勿直接使用zeabur或通过其他安装方式使用。如果没有npx,请先安装 Node.js。
在运行中的服务容器内运行命令。可用于调试、检查文件、查看环境变量、测试连通性或执行一次性数据库操作。
基本用法
命令和参数放在 -- 之后:
npx zeabur@latest service exec --id <service-id> -- <command> [args...]
数据库操作
# MongoDB - query, update, delete data
npx zeabur@latest service exec --id <mongodb-service-id> -- mongosh --eval 'db.users.find({})'
npx zeabur@latest service exec --id <mongodb-service-id> -- mongosh --eval 'db.sessions.deleteMany({title: /test/i})'
# PostgreSQL - run SQL queries (PGPASSWORD is set automatically in Zeabur containers)
npx zeabur@latest service exec --id <pg-service-id> -- psql -U postgres -c 'SELECT * FROM users LIMIT 10;'
# MySQL - run SQL queries (use env var to avoid interactive password prompt)
npx zeabur@latest service exec --id <mysql-service-id> -- sh -c 'mysql -u root -p"$MYSQL_ROOT_PASSWORD" -e "SHOW DATABASES;"'
# Redis - run commands
npx zeabur@latest service exec --id <redis-service-id> -- redis-cli KEYS '*'
示例
# List files
npx zeabur@latest service exec --id <service-id> -- ls -la
# Check environment variables
npx zeabur@latest service exec --id <service-id> -- env
# Check a specific env var
npx zeabur@latest service exec --id <service-id> -- sh -c "echo \$DATABASE_URL"
# Test database connectivity
npx zeabur@latest service exec --id <service-id> -- sh -c "nc -zv postgres 5432"
# Check running processes
npx zeabur@latest service exec --id <service-id> -- ps aux
# Read a config file
npx zeabur@latest service exec --id <service-id> -- cat /app/config.json
# Check disk usage
npx zeabur@latest service exec --id <service-id> -- df -h
标志
| 标志 | 说明 |
|---|---|
--id | 服务 ID |
-n, --name | 服务名称(优先使用 --id) |
--env-id | 环境 ID(存在多个环境时使用) |
提示
- 必须使用
--分隔符——其后的所有内容都是要在容器内运行的命令。 - 对于复合命令,请用
sh -c "..."包裹。 - 并非所有容器都有完整的 Shell——
sh比bash更通用。 - 需要展开变量时,外层使用单引号,内层使用双引号:
sh -c "echo \$VAR"。 - 如需查找服务 ID,请使用
zeabur-service-list技能。如需在不使用 exec 的情况下查看日志,请使用zeabur-deployment-logs技能。如需通过 CLI 管理环境变量,请使用zeabur-variables技能。
评论
支持 Markdown