Overview
Server health and description
The Bluesky PDS answering the atproto XRPC API through nginx: the _health endpoint returns the server version and describeServer reports the server DID and available user-handle domains.
Server health and description
Services, container and data disk
Admin API invite-code round-trip
This is a repackaged open source software product wherein additional charges apply for cloudimg support services.
Bluesky PDS - Production-Ready AT Protocol Personal Data Server
Run your own federated Bluesky node on AWS without the complexity of manual deployment. This delivers the official Bluesky Personal Data Server fully installed, configured, and serving behind an nginx reverse proxy - answering AT Protocol requests within minutes of launch.
The Problem This Solves
Standing up a PDS from source means installing Docker, wiring a reverse proxy with WebSocket support for the repository firehose, provisioning persistent storage for account databases and the blobstore, generating a JWT signing secret, an admin password and a secp256k1 PLC rotation key, and building health checks. This is fiddly, security-sensitive work that must be repeated for every environment. This image removes all of it, giving you a hardened stack with unique per-instance secrets generated on first boot and zero shared or default credentials.
What You Get
- Immediate federation readiness: the PDS container is version-frozen to a pinned image digest, fronted by nginx with WebSocket upgrade configured for the atproto firehose, and starts serving on boot
- Dedicated data disk: account databases, repository data, and the blobstore live on a separate EBS volume you can resize independently of the OS disk
- Automatic secret generation: first boot creates a unique JWT signing secret, admin password, and PLC rotation key - no manual key management required
- Full com.atproto XRPC surface: supports invite-gated account creation, connects to public directory and app-view services, and exposes the admin API for server management
- Health endpoint built in: ready for load balancer health checks and uptime monitoring out of the box
Architecture
The PDS runs as a container bound to the loopback interface and fronted by nginx on port 80. The Docker engine and reverse proxy start on boot, and the container restarts on failure. The WebSocket upgrade needed by the atproto firehose is pre-configured, along with a generous upload limit for blobs. All persistent data lives on a dedicated disk, separate from the operating system.
Configure Your Domain and Federate
The image ships domain-free: on first boot the server binds to the instance's own address so it is immediately verifiable. To federate with the wider Bluesky network, point a DNS hostname (and a wildcard record for user handles) at the instance, set that hostname in the server's environment file, and restart the service. TLS can be terminated with an AWS Application Load Balancer or your own certificate. The paired cloudimg user guide walks through every step.
Security and Data Protection
- No shared secrets: a one-shot first-boot service generates all cryptographic material unique to your instance and records the admin password in a root-only file; no default or hardcoded passwords ship in the image, and you should change the admin password on first login
- Network isolation: the PDS container binds only to loopback and is never directly exposed
- Encryption in transit: terminate TLS on an AWS ALB or configure your own certificate
- Encryption at rest: enable EBS encryption on the dedicated data disk
- Security groups: restrict inbound access to served ports from your trusted IP ranges
Use Cases
- Independent operators and communities: host accounts and data on infrastructure you control rather than relying on a single provider
- Developers and integrators: get a real atproto server for building and testing clients, bots, feed generators, and protocol integrations
- Organisations and brands: run official accounts on your own domain with your own moderation and retention policies while remaining federated
Get Started
Launch the AMI, verify the health endpoint responds, then follow the paired cloudimg user guide to configure your domain and begin federating. For deployment assistance, contact cloudimg support.
cloudimg Support
Highlights
- Production-ready in minutes: launch the AMI and the official Bluesky PDS is serving AT Protocol requests immediately - no Docker setup, no reverse proxy configuration, no manual secret generation required. The container is version-frozen to a pinned image digest for reproducible deployments, and nginx is pre-configured with WebSocket upgrade support for the atproto repository firehose.
- Dedicated data disk with independent scaling: account databases, signed repositories, and the blobstore all live on a separate EBS volume that you can resize without touching the operating system disk. This architecture protects your data independently and simplifies backup, migration, and capacity planning as your hosted accounts grow.
- Zero shared credentials with 24/7 support: every instance generates its own unique JWT signing secret, admin password, and PLC rotation key on first boot - no default or shared secrets ever ship in the image. Change the admin password on first login. The PDS container binds only to loopback for network isolation. Backed by 24/7 cloudimg technical support for deployment, configuration, and troubleshooting.
Details
Introducing multi-product solutions
You can now purchase comprehensive solutions tailored to use cases and industries.
Features and programs
Financing for AWS Marketplace purchases
Pricing
Free trial
- ...
Dimension | Description | Cost/hour |
|---|---|---|
m5.large Recommended | m5.large | $0.08 |
t2.micro | t2.micro instance type | $0.04 |
t3.micro | t3.micro instance type | $0.04 |
c5a.12xlarge | c5a.12xlarge instance type | $0.24 |
c5a.16xlarge | c5a.16xlarge instance type | $0.24 |
c5a.24xlarge | c5a.24xlarge instance type | $0.24 |
c5a.2xlarge | c5a.2xlarge instance type | $0.24 |
c5a.4xlarge | c5a.4xlarge instance type | $0.24 |
c5a.8xlarge | c5a.8xlarge instance type | $0.24 |
c5a.large | c5a.large instance type | $0.08 |
Vendor refund policy
Refunds available on request.
How can we make this page better?
Legal
Vendor terms and conditions
Content disclaimer
Delivery details
64-bit (x86) Amazon Machine Image (AMI)
Amazon Machine Image (AMI)
An AMI is a virtual image that provides the information required to launch an instance. Amazon EC2 (Elastic Compute Cloud) instances are virtual servers on which you can run your applications and workloads, offering varying combinations of CPU, memory, storage, and networking resources. You can launch as many instances from as many different AMIs as you need.
Version release notes
Initial release of Bluesky PDS (AT Protocol Personal Data Server) as a ready-to-use self-hosted atproto server with per-instance secrets generated on first boot.
Additional details
Usage instructions
Connect via SSH on port 22 as the default login user for your operating system variant (for the Ubuntu 24.04 variant the user is ubuntu). Retrieve the generated admin password with: sudo cat /root/bluesky-pds-credentials.txt. The Bluesky PDS answers the atproto XRPC API on port 80 via nginx (the pds container runs on loopback 3000). Check server health at http://<instance-public-ip>/xrpc/_health and describe the server at http://<instance-public-ip>/xrpc/com.atproto.server.describeServer. Mint an invite code with the admin password: curl -u admin:PASSWORD -X POST http://<instance-public-ip>/xrpc/com.atproto.server.createInviteCode -H 'Content-Type: application/json' -d '{"useCount":1}'. To federate, point a DNS hostname (plus a wildcard record for user handles) at the instance, set PDS_HOSTNAME in /pds/pds.env and run: sudo systemctl restart bluesky-pds. The account databases and blobstore live on a dedicated data disk mounted at /pds. The instance security group opens ports 22, 80 and 443. The PDS runs as a Docker container: sudo docker ps; the reverse proxy runs under systemd: systemctl status nginx.
Resources
Vendor resources
Support
Vendor support
cloudimg provides 24/7 technical support for this product by email and live chat. Our engineers help with deployment, configuration, updates, performance tuning and troubleshooting; critical issues receive a one hour average response. Contact support@cloudimg.co.uk .
AWS infrastructure support
AWS Support is a one-on-one, fast-response support channel that is staffed 24x7x365 with experienced and technical support engineers. The service helps customers of all sizes and technical abilities to successfully utilize the products and features provided by Amazon Web Services.
Similar products

