Driver FixRecommendedSound, Wi-Fi or graphics acting up? Check drivers firstFind missing or outdated drivers fast.Check DriversOctober DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsPC HealthRecommendedCrashes, freezes, slowdowns? Check your PC nowSpot repairable issues before they interrupt work.Check PC×
Skip to content
VGSources
Blog

How to Host a Bluesky PDS on Your Own VPS

A practical guide to running your own Bluesky Personal Data Server: choose the VPS, configure DNS and ports, install the official distribution, connect clients, verify federation, and operate the service safely.
Length11 min Posted Quest giverVGSources Team

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Hosting a Bluesky Personal Data Server (PDS) on your own VPS gives you direct control of an account repository, domain-based handles, credentials, backups, and uptime. The official small-deployment path uses Ubuntu, Docker, Caddy, and a public DNS name; the documented baseline is 1 GB RAM, one CPU core, 20 GB SSD, and capacity for roughly 1–20 users.

What a self-hosted Bluesky PDS does

A PDS is the service that stores a Bluesky account’s repository and serves that repository to the AT Protocol network. When you operate the PDS, the VPS becomes responsible for the service that would otherwise be run by a hosting provider: keeping the repository available, accepting account requests, presenting valid HTTPS certificates, exposing the synchronization stream, and protecting account data.

As an Amazon Associate I earn from qualifying purchases.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Self-hosting is therefore more than installing a social-media application. A working PDS must be reachable from the public internet, resolve correctly from DNS, terminate TLS, keep its data directory backed up, and remain patched. The official Bluesky documentation describes the goal as running a PDS capable of federating with the wider Bluesky network.

Minimum server, network, and domain requirements

The following is the documented small-deployment profile. It is a starting point rather than a performance guarantee for large communities, heavy media use, or many independent accounts.

#1 Best Overall
Sale
Gaoye Blue Light Blocking Glasses
  • BLUE LIGHT BLOCKING GLASSES: Our blue light glasses for women boast UV400 protection, blocking harmful blue rays from computer screens. With these bluelight glasses women, you can enjoy gaming, reading, or watching TV with no worries of eye strain.
  • EYE RELIEF: Our blue light glasses are engineered to reduce blurry vision or strain caused by prolonged screen time. These womens blue light glasses aid in better sleep by preventing blue light from disrupting your natural sleep cycle, helping you fall asleep faster and enjoy a more restful night's sleep, making them the perfect christmas present.
  • COMFORTABLE: Crafted from durable material, our trendy blue light glasses for woman or blue light glasses men ensure long-lasting comfort. The high-transmittance lenses accessories, gamer gifts for men, help keep your eyes relaxed. Perfect stocking stuffers, gifts for gamers men, christmas gifts for men, halloween costumes.
  • LIGHTWEIGHT: These clear blue light glasses feature a lightweight frame, meaning they’ll stay comfy for long-term wear. Perfect as blue blockers glasses for women or mens blue light glasses, these non-prescription fake glasses for men can be worn throughout the day. The blue light blocking glasses women feature polycarbonate HD lenses, which are anti-reflective and restore true color.
  • WORRY-FREE PURCHASE: If you experience any issues, our support team is ready to assist you quickly. These are the perfect costume glasses for cosplay dressing up.
Requirement Documented baseline or rule Why it matters
Operating system Ubuntu 24.04 for the small deployment; the installer flow also documents Ubuntu 20.04/22.04/24.04 and Debian 11/12/13. The supplied installer and container configuration are written for these distributions.
Memory 1 GB RAM Minimum size stated for the small deployment. Leave headroom if you add other services.
CPU 1 CPU core Baseline for roughly 1–20 users, not a sizing promise for larger workloads.
Storage 20 GB SSD Holds the PDS installation and data. Backups and repository growth need additional capacity elsewhere.
Public address One public IPv4 address Public DNS must resolve to an address the internet can reach.
Inbound ports TCP 80 and TCP 443 Port 80 is used for certificate verification; application traffic uses HTTPS on 443.
Domain A public DNS name you control The domain is part of the PDS identity and is used for handles and HTTPS.
Recommended audience Approximately 1–20 users The official README’s recommendation for this small configuration.

You also need root or sudo access, persistent SSD storage, and control over the VPS provider’s cloud firewall. Select a region close to your users when latency matters, but do not assume that a particular provider, bandwidth allowance, backup plan, or monthly price is universal; those terms vary by provider and region.

Choose the VPS and domain before installing

Select a VPS with the right controls

  • Confirm that the instance has a public IPv4 address, not only private networking or IPv6.
  • Verify that you can log in as root or use sudo and that you can edit cloud-firewall rules.
  • Use persistent SSD storage and check how snapshots and provider backups are priced separately.
  • Make sure the operating-system image is one of the documented Ubuntu or Debian versions.
  • Keep ports 80 and 443 available. The quick installer expects to manage the web-facing service itself.

The official instructions name DigitalOcean and Vultr as popular VPS choices, but the PDS requirements are not tied to either provider. Compare public IPv4 availability, included bandwidth, SSD volume and snapshot pricing, region, firewall controls, backup options, IPv6 behavior, and support before purchasing.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use a domain you control

Buy or delegate a domain that you can edit at its authoritative DNS provider. You can use the root domain itself as the PDS hostname, such as example.com, or another name under a domain you control. Decide this before installation because the installer asks for the public DNS name and the account handles will depend on it.

Point DNS at the VPS

Create an A record for the PDS hostname and point it at the VPS’s public IPv4 address. If the PDS will issue handles for multiple users, create a wildcard A record pointing to the same address.

Record Type Value Purpose
example.com A VPS public IPv4 Resolves the main PDS hostname.
*.example.com A VPS public IPv4 Allows newly issued subdomain handles to resolve to the PDS.

A 600-second TTL is described as reasonable, although other TTL values can work. DNS changes are cached, so verify the records from outside your own network before troubleshooting the installer. The wildcard is not cosmetic: without it, a newly created handle on a subdomain may not resolve even when the main PDS hostname does.

Rank #2
Windex Gaming Cleaning Wipes, Pre-Moistened Wipes to Instantly Clean all Gaming Gear and Electronics, Resealable Packaging for a Freshness Lock, 25 count (Pack of 1)
  • WINDEX GAMING WIPES: effortlessly clean all your gaming gear and gaming electronics in one easy step with our new Windex Gaming Wipes
  • AMMONIA FREE: our ammonia-free formula is safe to use on all of your favorite gaming equipment like consoles, headsets, controllers, screens, keyboards, and more
  • PRE-MOISTENED WIPES: each wipe instantly removes dust, dirt, and stubborn smudges and fingerprints leaving a streak-free shine
  • ANTI-STATIC: great for cleaning and wiping down your gaming gear and electronics leaving behind no visible residue
  • COMPACT RESEALABLE PACKAGE: store your pack of Windex Gaming Wipes anywhere in your home for whenever a quick and easy wipedown is needed

Open only the required firewall paths

  1. In the VPS provider’s cloud firewall, allow inbound TCP 80 from the public internet.
  2. Allow inbound TCP 443 from the public internet.
  3. Allow SSH on TCP 22 only from your own public IP address where practical. If your address changes, update the rule before locking yourself out.
  4. Keep unrelated inbound ports closed unless another service genuinely needs them.

Port 80 is needed for certificate verification even though ordinary application requests should use HTTPS. Closing it after installation can prevent certificate issuance or renewal, so leave it available to the supplied configuration.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Install the official PDS distribution

Start with a reasonably fresh Ubuntu or Debian host. The quick path assumes another web server is not already occupying ports 80 and 443.

  1. Connect to the VPS over SSH and update the operating system using your distribution’s normal package-management procedure.
  2. Download the installer supplied by the official PDS repository:
curl https://raw.githubusercontent.com/bluesky-social/pds/main/installer.sh > installer.sh
sudo bash installer.sh
  1. When prompted, enter the public DNS name you prepared and an administrator email address.
  2. Use the installer’s account-creation option if you want an initial PDS account immediately. It asks for a handle, email address, and password.
  3. Record the administrative credentials in a password manager before leaving the installer. Account-creation output warns that the password will not be displayed again.

The documented installer flow supports Ubuntu 20.04, 22.04, and 24.04, plus Debian 11, 12, and 13. The small-deployment recommendation itself names Ubuntu 24.04, 1 GB RAM, one CPU core, and 20 GB SSD. If your VPS already serves websites, do not run the quick installer blindly: first design a deliberate reverse-proxy arrangement so the PDS and existing sites have unambiguous virtual hosts and access to the required ports.

How TLS and Caddy fit into the deployment

The supplied Docker Compose deployment includes Caddy. It obtains and renews certificates and handles the HTTP-to-HTTPS behavior, so you do not need to configure TLS manually or create a separate redirect for the standard installation.

This convenience depends on the DNS and firewall steps being correct. Caddy must be able to answer on ports 80 and 443, and the requested hostname must resolve to the VPS. Replacing Caddy with Nginx or Apache is an advanced deviation. The official troubleshooting guidance identifies certificates, WebSockets, and virtual server names as common failure points when the supplied configuration is replaced. Unless you have a specific reverse-proxy requirement, keep the included Caddy service.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
Sale
LISEN Cell Phone Stand Phone Holder for Desk, Office Decor Gadgets for Men
  • Ergonomic & Adjustable Design: Fight "text neck" and improve your posture. Designed for comfort, it offers an adjustable height (7.1in-8.5in) (1.4in adjustable range) and angle (5°-85°) Please note: cell phone stand is only 9 inches tall—the length of a standard pencil
  • Without blocking subtitles Perfect for office desk Tiktok Face Time Zoom video—this is the ultimate kitchen desk essential for phones! Perfect viewing experience while reducing neck back strain, A must-have for gamers streamers desk, and anyone who values both style and support!
  • Sleek & Stable Design fits Otterbox Case: Say goodbye to bent cables, tangles, and tip-overs! LISEN’s stylish adjustable desk phone holder features a built-in charging hole and smart cable management, keeping your phone secure and your workspace clutter-free cool gadgets for men
  • ANTI-SLIP DESIGN free hands: The under 10.00 items easy gadgets back and the bottom of this kitchen essentials for women are fully covered by anti-skid silicone, which LISEN stand up desk decor can provide maximum protection device from any scratches and slides
  • Your Perfect Viewing Companion:If your product arrives damaged or breaks within 365 days, reach out to LISEN for a quick and hassle-free solution. Struggling with assembly, like tightening the screw? We’ve got your back! Your experience matters to us. (Product including: phone Holder stand*1, screw*1, hexagon screwdriver*1, specification*1)

Check that the PDS is healthy and federating

Check the HTTPS health endpoint

Request the health endpoint over HTTPS:

https://example.com/xrpc/_health

A healthy response is JSON containing a version. The documentation gives {"version":"0.2.2-beta.2"} as an example; your version may differ as the distribution changes. An HTTPS error, a certificate warning, or a timeout points to DNS, firewall, Caddy, or service startup rather than an account problem.

Check the repository WebSocket

The PDS also needs a functioning repository stream. Use a WebSocket client such as wsdump:

wsdump "wss://example.com/xrpc/com.atproto.sync.subscribeRepos?cursor=0"

A new PDS can be quiet until it creates an event. No immediate WebSocket output is therefore not proof of failure. Keep the connection open while creating an account or generating another repository event, then check whether messages arrive. If the health endpoint works but the WebSocket cannot connect, inspect the Caddy proxy configuration, certificate, hostname matching, and any intermediate firewall or proxy.

Use both checks. A successful health response proves that the HTTP service answers; it does not, by itself, prove that repository synchronization is available to the wider network.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Create additional accounts

The image includes the goat administration tool. The documented container command creates another account:

Rank #4
Ledagic IC+RGBW USB Powered Led Light Bar with App & Remote Control, 2 Pack
  • Easy Installation: Our gaming lights have been designed to enhance your entertainment experience. Simply position the led light bar next to your TV or game console to create a game room environment with ease. They come with USB power and a 60 inch cord for direct mounting and mobility
  • Audio Syncing & Extensive Mode: The built-in high-sensitivity music sensor allows you to sync the TV led lights to your favorite music. Lights react and move to the beat of music, film and game audio, creating an incredible immersive sound and light experience – and all without the need for an additional hub. You can choose from 64+ patterns, including strobe, illusion, jump, energy, gradient, running, chasing, fluttering mode etc. Each mode can be applied to different scenes
  • 64+ Chasing IC+RGB & W Effect: The independent control design of IC+RGB and white all-in-one multifunctional rgbw led bar lights monitor backlight allows you to easily switch the led lights for desk between IC+RGB and white to enjoy a variety of lighting effects, you can choose white lighting mode with high brightness for better illumination when working, etc. Choose IC+RGB lighting mode when you need to create an entertaining atmosphere for the light show, 16 million colours of Color changing rgb light bar let you dance to the beat and create a dynamic party atmosphere
  • Dynamic and Dimmable Lights: 1%-full brightness free brightness adjustment gives you the flexibility to adjust dimmable led light bar for room decorations or a variety of occasions
  • USB Powered: USB light bars for room can be powered by powernank, usb charger, TV, Monitor, laptop PC mainframe, making behind TV led lighting bar easy to install in any location.TV led lights are powered by the TV usb interface / PC mainframe, can be turned on/off synchronously with TV / PC
docker exec pds goat pds admin account create 
  --admin-password PDS_ADMIN_PASSWORD 
  --handle newuser.example.com 
  --email [email protected] 
  --password new-password

Replace the example values with the administrator password and the new user’s real handle, email, and password. Treat the command as sensitive: shell history, terminal logs, and process inspection can expose credentials. Prefer a password manager and a controlled administrative session, and remove any copied credentials from shared notes.

The installation also exposes pdsadmin for administrative work. The standard deployment’s systemd service, Docker containers, and /pds data directory are the places to look when checking status, reading logs, or preparing backups. On a standard installation, inspect the systemd unit and container state before changing configuration; a restart that fixes a symptom without addressing DNS, storage, or certificate errors will not produce a reliable service.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Connect the Bluesky web, iPhone, and Android clients

  1. Open the Bluesky client’s server or PDS selection screen.
  2. Enter the full PDS URL, including the https:// scheme and your public hostname.
  3. Sign in with an account created on that PDS, or create one using the PDS administration tools first.
  4. If the handle uses a new subdomain, wait for its certificate to be issued and become reachable.

The official instructions say the web, iPhone, and Android apps can connect by entering the PDS URL. The first certificate for a subdomain is created on demand; a newly created handle may take about 10–30 seconds to become reachable. A short delay is expected, but a persistent failure after that interval should be investigated through DNS, port 80/443 access, and Caddy logs.

Backups, credentials, updates, and monitoring

A PDS is an operational service, not a disposable test container. The quick installer gets the service running, but it does not remove the operator’s responsibility for data and availability.

Back up the PDS data

  • Back up the complete /pds data directory, not only a container image.
  • Keep at least one copy outside the VPS so a disk failure, account lockout, or provider incident does not destroy both the live service and its backup.
  • Protect backup files because repositories, credentials, and configuration may contain sensitive information.
  • Periodically test restoring to a separate location. A backup that has never been restored is only an assumption.

The documented deployment associates backup data with /pds. The exact schedule and retention policy are operational decisions: choose a frequency that matches how much account activity you can afford to lose, and retain enough historical copies to recover from unnoticed corruption.

Best Value
Sale
HUANUO FlowLift™ Dual Monitor Stand, Fully Adjustable Gaming Monitor Desk Mount for 13–32″ Computer Screens, Full Motion VESA 75x75/100x100 with C-Clamp & Grommet Base, Each Arm Holds 4.4 to 19.8 lbs
  • Compatible with Wide Screens - To ensure compatibility with the dual monitor mount, your each monitor must meet three conditions at the same time: First, computer screens size range: 13 to 32 inches. Second, screen weight range: 4.4 to 19.8 lbs. Third, the back of the monitor screen must have VESA mounting holes with a pitch of 75x75mm or 100x100mm.
  • Regarding the compatibility with desks - Your desk must meet three conditions at the same time: First, desk material: Only wooden desks are recommended, plastic or glass desks cannot be used. Second, desk thickness range: 0.59" - 3.54". Third, the bottom of the desk should not have any cross beams or panels, as this will interfere with installation. We recommend carefully checking that your desk and monitors meets all above conditions before purchasing.
  • Dual C-Clamp Hold - Worried your dual monitors might wobble or slip? Our upgraded base uses a larger platform plus a dual C-clamp structure to lock the dual monitor arm firmly to your desk. Each arm safely keeps your screens steady while you type, click and game—no shaking, no sliding, just a clean and secure setup you can trust every day. It also provides Grommet Mounting installation choice, both options ensure stable and secure fixation for your 0.59" - 3.54" desk.
  • Full-Motion Adjustment For Comfortable View - Pull the screen closer when you’re deep in a spreadsheet, push it back to watch videos, or rotate to portrait for coding — moving everything smoothly with just one hand. The monitor stand offers +85°/-50° tilt, ±90° swivel and 360° rotation. Raise your monitor up to 15.75″ to support a healthy sitting posture. Whether you’re working from home, gaming through the night, or switching between video calls and documents, getting the screens to your natural line of sight helps relieve neck, shoulder and back strain so you can stay focused longer with less fatigue.
  • Keep Your Desk Organized: By lifting both screens off the desktop, this dual monitor stand opens up valuable space for your keyboard, notebook, docking station or a simple, clutter-free work area. Built-in cable management guides wires along the arms, keeping cords out of sight and out of the way. Enjoy a tidy, modern workstation that looks as good as it feels to use.

Protect administrative access

  • Use unique, long passwords for the administrator and each account.
  • Restrict SSH in the cloud firewall and disable password-based SSH in favor of keys when your access plan supports it.
  • Do not publish administrator passwords in shell snippets, tickets, or chat.
  • Review who can access the VPS console, DNS account, backups, and provider snapshots.

Patch and observe the host

Apply operating-system and PDS updates on a planned schedule, after confirming that a current backup exists. Monitor disk usage, memory pressure, service restarts, certificate renewal, and reachability of the health endpoint. Storage exhaustion is especially damaging because a PDS may fail while still appearing to have a valid certificate and DNS record.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Troubleshooting by symptom

Symptom Likely checks What to do
The hostname does not resolve A record, wildcard A record, DNS propagation, and whether the value is the VPS’s public IPv4. Correct the records and wait for cached answers to expire. Check the root hostname and the new handle hostname separately.
Certificate issuance fails Port 80 access, port 443 access, DNS resolution, and another process already listening on either port. Free the ports or redesign the reverse proxy. Keep port 80 reachable for certificate verification.
HTTPS health request times out Cloud firewall, host firewall, Caddy status, container status, and public IP assignment. Restore inbound 443 and verify that the supplied services are running before changing application settings.
Health works but WebSocket fails Proxy WebSocket forwarding, virtual hostname rules, certificate validity, and intermediate proxies. Prefer the supplied Caddy configuration; replacing it requires explicit WebSocket and hostname handling.
WebSocket stays silent Whether the PDS has generated a repository event. Create an account or another event and observe again. Silence on a brand-new, idle PDS is not conclusive.
A new handle is unreachable for a short time On-demand certificate issuance and wildcard DNS. Allow roughly 10–30 seconds, then verify the wildcard record and certificate path.
The installer refuses to start Existing services on ports 80/443, unsupported OS image, insufficient privileges, or a non-fresh host. Use a supported distribution, run with sudo, stop conflicting web services, or plan a deliberate reverse-proxy deployment instead of forcing the script.

When the baseline is no longer enough

The official 1 GB, one-core, 20 GB profile is aimed at roughly 1–20 users. Treat that figure as a documented recommendation, not a capacity guarantee. Once you add more users, active repositories, operational tooling, or other applications to the same VPS, measure memory, CPU, storage growth, and restart frequency rather than assuming the original profile will scale linearly.

Keep the PDS isolated from unrelated websites when possible. Isolation makes port ownership, backups, patching, and incident response clearer. If consolidation is unavoidable, document which reverse proxy owns 80 and 443, how WebSockets are forwarded, where certificates are stored, and how a failure in one site can affect the PDS.

Self-managed versus managed PDS hosting

Operating the VPS is appropriate when you need control over the host, data location, DNS, backups, and administrative access and are comfortable maintaining Docker, Caddy, firewalls, and updates. A managed PDS can be preferable when you want a custom-domain account without handling those services yourself.

Decision area Self-managed VPS Managed PDS
Operational access You control the operating system, containers, DNS, and service configuration. The provider controls infrastructure; your access is limited to its management interface and policies.
Backups You choose the schedule, retention, location, and restore tests. Backup frequency, retention, and restore process depend on the provider and should be verified contractually.
Custom-domain support You configure DNS, wildcard records, and certificates directly. Confirm supported domains, DNS steps, certificate handling, and any limits before subscribing.
Migration and export You can plan around your own /pds data and snapshots. Ask how repositories, handles, credentials, and configuration can be exported or moved.
Federation compatibility You validate the health endpoint and repository WebSocket yourself. Require an explicit statement that the service federates with the AT Protocol network.
Incident response You investigate outages, certificates, storage, and firewall rules. The provider may handle infrastructure incidents, but response targets vary.
Recurring cost VPS, storage, snapshots, backups, and domain fees vary by provider and region. Subscription pricing and included operations vary by provider; no universal price follows from the technical requirements.

Whichever model you choose, confirm that you can recover the account data and that the resulting service supports the handles and federation behavior you need.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A practical launch checklist

  • Choose a supported Ubuntu or Debian image with at least 1 GB RAM, one CPU core, and 20 GB SSD for the small deployment.
  • Confirm a public IPv4 address, sudo or root access, persistent storage, and cloud-firewall control.
  • Create the root A record and, for multi-user handles, the wildcard A record.
  • Allow inbound TCP 80 and 443; restrict SSH to trusted addresses where possible.
  • Ensure no existing web server occupies 80 or 443 before running the quick installer.
  • Run the official installer, enter the public DNS name and administrator email, and store credentials securely.
  • Leave the included Caddy service in place unless you have a tested reverse-proxy design.
  • Check https://example.com/xrpc/_health and test the repository WebSocket.
  • Create accounts with goat and allow 10–30 seconds for a new subdomain certificate to become reachable.
  • Back up /pds, test a restore, patch the host, and monitor storage, service health, and certificate renewal.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More quests from Patch Notes

  1. How to Set Up a RedM (RDR2) Server in 2026: License Key, txAdmin and server.cfg, Step by StepBlog11min
  2. Best RedM (RDR2) Server Hosting in 2026: Comparing Four Hosts on Slots, Memory and PriceBlog10min
  3. How to Host a Mindustry Server in 2026: server-release.jar, Port 6567 and the Commands That MatterBlog7min
Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.