Agent Skillspollinations/pollinations › enter-services

enter-services

GitHub

用于在EC2和Cloudflare Workers上部署和管理pollinations.ai文本/图像服务。涵盖SSH配置、生产与预发环境的服务状态检查、日志查看、重启及手动部署流程,需具备SSH密钥、sops和Wrangler等前置条件。

.claude/skills/enter-services/SKILL.md pollinations/pollinations

Trigger Scenarios

需要部署或更新enter.pollinations.ai服务 需要检查EC2实例上的text/image服务状态或日志 需要重启生产或预发环境的后台服务

Install

npx skills add pollinations/pollinations --skill enter-services -g -y
More Options

Non-standard path

npx skills add https://github.com/pollinations/pollinations/tree/main/.claude/skills/enter-services -g -y

Use without installing

npx skills use pollinations/pollinations@enter-services

指定 Agent (Claude Code)

npx skills add pollinations/pollinations --skill enter-services -a claude-code -g -y

安装 repo 全部 skill

npx skills add pollinations/pollinations --all -g -y

预览 repo 内 skill

npx skills add pollinations/pollinations --list

SKILL.md

Frontmatter
{
    "name": "enter-services",
    "description": "Deploy and manage enter.pollinations.ai text\/image services on EC2 and Cloudflare Workers. Requires: SSH keys, sops, wrangler."
}

Requirements

Before using this skill, ensure you have:

  • SSH keys: Configured via GitHub secrets (see workflow)
  • sops: brew install sops (for decrypting secrets)
  • Wrangler: npm install -g wrangler
  • Node.js: brew install node

Must run from the pollinations repo root.


Architecture Overview

Environment Gateway (Cloudflare Worker) Text/Image Services (EC2)
Production enter.pollinations.ai 54.147.14.220 (ports 16384/16385)
Staging staging.enter.pollinations.ai 44.222.254.250 (ports 16384/16385)

SSH Configuration

Add to ~/.ssh/config:

# Production instance
Host enter-services
  HostName 54.147.14.220
  User ubuntu
  IdentityFile ~/.ssh/enter-services-shared

# Staging instance
Host enter-services-staging
  HostName 44.222.254.250
  User ubuntu
  IdentityFile ~/.ssh/enter-services-staging

Quick Commands

Production

# Service status
ssh enter-services "sudo systemctl status text-pollinations.service image-pollinations.service"

# View logs (real-time)
ssh enter-services "sudo journalctl -u text-pollinations.service -f"
ssh enter-services "sudo journalctl -u image-pollinations.service -f"

# Restart services
ssh enter-services "sudo systemctl restart text-pollinations.service image-pollinations.service"

# Recent errors
ssh enter-services "sudo journalctl -u text-pollinations.service -p err -n 20"

Staging

# Service status
ssh enter-services-staging "sudo systemctl status text-pollinations.service image-pollinations.service"

# View logs
ssh enter-services-staging "sudo journalctl -u text-pollinations.service -f"

# Restart
ssh enter-services-staging "sudo systemctl restart text-pollinations.service image-pollinations.service"

Deploy to Production

The GitHub workflow handles production deployments automatically on push to production branch.

Manual deployment:

# 1. SSH into production
ssh enter-services

# 2. Pull and restart
cd /home/ubuntu/pollinations
git pull origin production
cd text.pollinations.ai && npm install
sudo systemctl restart text-pollinations.service

Deploy to Staging

Full Setup (New Instance)

# 1. SSH into the new instance
ssh enter-services-staging

# 2. Install build tools (if needed)
sudo apt-get update && sudo apt-get install -y build-essential

# 3. Clone repo
git clone https://github.com/pollinations/pollinations.git
cd pollinations

# 4. Run setup script
bash enter.pollinations.ai/scripts/setup-services.sh /home/ubuntu/pollinations

# 5. Restart the text service
ssh enter-services-staging "sudo systemctl restart text-pollinations.service"

Update Staging

ssh enter-services-staging "cd /home/ubuntu/pollinations && git pull && cd text.pollinations.ai && npm install && sudo systemctl restart text-pollinations.service"

Deploy Cloudflare Worker (enter.pollinations.ai)

cd enter.pollinations.ai

# Production
npm run deploy:production

# Staging
npm run deploy:staging

Service Locations (on EC2)

  • Service definitions: /etc/systemd/system/
  • Text service: /home/ubuntu/pollinations/text.pollinations.ai/

Wrangler Configuration

The wrangler.toml contains environment configs:

Environment Route Service URLs
production enter.pollinations.ai Production EC2
staging staging.enter.pollinations.ai Staging EC2
local localhost:3000 Local dev

Troubleshooting

Services won't start

# Check logs
ssh enter-services-staging "sudo journalctl -u text-pollinations.service -n 50"

# Check if .env exists
ssh enter-services-staging "ls -la /home/ubuntu/pollinations/text.pollinations.ai/.env"

# Check node/npm
ssh enter-services-staging "node -v && npm -v"

Missing dependencies

ssh enter-services-staging "cd /home/ubuntu/pollinations/text.pollinations.ai && npm install"

Need build tools

ssh enter-services-staging "sudo apt-get install -y build-essential"

Token Rotation

Internal trust-boundary tokens (PLN_ENTER_TOKEN, PLN_GPU_TOKEN, Tinybird tokens, SOPS recipients): see token-rotation.md for the inventory, rotation mechanisms, deploy path, and rollback.


Notes

  • Production deploys on push to production branch
  • Staging deploys on push to staging branch
  • Always test on staging before merging to production
  • The Cloudflare Worker (enter.pollinations.ai) routes to EC2 services
  • Text service: port 16385, Image service: port 16384

Version History

  • 8303332 Current 2026-08-20 04:57

    移除了遗留的image backend root代码,并将GPU后端相关文档重构至operations目录下。

  • 99bce92 2026-07-25 10:38

Same Skill Collection

.claude/skills/abuse-detection/SKILL.md
.claude/skills/candidate-evaluation/SKILL.md
.claude/skills/code-formatting/SKILL.md
.claude/skills/community-leaderboard/SKILL.md
.claude/skills/issue-maker/SKILL.md
.claude/skills/manage-vast-gpu-fleet/SKILL.md
.claude/skills/model-debugging/SKILL.md
.claude/skills/model-management/SKILL.md
.claude/skills/monitor-services/SKILL.md
.claude/skills/polli-video/SKILL.md
.claude/skills/polli/SKILL.md
.claude/skills/r2-glacier-migration/SKILL.md
.claude/skills/spending-analysis/SKILL.md
.claude/skills/sync-production/SKILL.md
.claude/skills/tinybird-deploy/SKILL.md
.claude/skills/voting-status/SKILL.md
.claude/skills/web-research/SKILL.md
apps/openclaw/skills/founder-meditation/SKILL.md
packages/polli-cli/SKILL.md

Metadata

Files
0
Version
8303332
Hash
d1893d90
Indexed
2026-07-25 10:38

inicio - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-21 05:54
浙ICP备14020137号-1 $mapa de visitantes$