enter-services

Before using this skill, ensure you have:

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "enter-services" with this command: npx skills add pollinations/pollinations/pollinations-pollinations-enter-services

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

3.80.56.235 (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 3.80.56.235 User ubuntu IdentityFile ~/.ssh/enter-services-shared-key

Staging instance

Host enter-services-staging HostName 44.222.254.250 User ubuntu IdentityFile ~/.ssh/enter-services-staging-key

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 cd ../image.pollinations.ai && npm install sudo systemctl restart text-pollinations.service image-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. From your LOCAL machine - decrypt and copy env files

cd /path/to/pollinations sops --output-type dotenv -d text.pollinations.ai/secrets/env.json > /tmp/text.env sops --output-type dotenv -d image.pollinations.ai/secrets/env.json > /tmp/image.env scp /tmp/text.env enter-services-staging:/home/ubuntu/pollinations/text.pollinations.ai/.env scp /tmp/image.env enter-services-staging:/home/ubuntu/pollinations/image.pollinations.ai/.env rm /tmp/text.env /tmp/image.env

6. Restart services

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

Update Staging

ssh enter-services-staging "cd /home/ubuntu/pollinations && git pull && cd text.pollinations.ai && npm install && cd ../image.pollinations.ai && npm install && sudo systemctl restart text-pollinations.service image-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/

  • Image service: /home/ubuntu/pollinations/image.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"

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

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

model-management

No summary provided by upstream source.

Repository SourceNeeds Review
General

candidate-evaluation

No summary provided by upstream source.

Repository SourceNeeds Review
General

app-review

No summary provided by upstream source.

Repository SourceNeeds Review