Halloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix NowHalloween DealsAmazon USOctober picks are moving - compare before checkoutAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
World desk11 min

How to Install Auto-GPT on a VPS (Docker Compose Guide)

A current, step-by-step Auto-GPT VPS guide covering Docker prerequisites, source installation, environment secrets, Compose startup, HTTPS reverse-proxy security, account setup, persistence, and the appliance release caveat.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The dependable way to self-host Auto-GPT on a VPS today is the source checkout with Docker Compose. Install Docker on a Linux VPS, clone the AutoGPT repository, generate the platform environment files and secrets, add your provider credentials, then build the services with Compose. Keep the application on loopback until a TLS reverse proxy and access controls are ready.

This guide covers the supported architectures, VPS sizing, exact setup commands, first-run account lockdown, HTTPS exposure, persistence, upgrades, and the release caveat around the single-container appliance installer.

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.

What the VPS must provide

Auto-GPT’s self-hosting workflow runs Linux containers through a local Docker daemon. The documented container architectures are amd64 and arm64; a Windows-only container host or an unsupported CPU architecture is not a suitable target for this procedure.

Requirement What to provision Why it matters
Operating environment Linux VPS with a working Docker daemon The platform is delivered as Linux containers.
CPU architecture amd64 or arm64 These are the architectures named by the installer documentation.
Memory At least 8 GB RAM This is the minimum figure in the appliance guidance; more memory may be useful when several services run simultaneously.
Storage About 25 GB of free disk space Images, build layers, logs, and the persistent application volume need room.
Source-build tools Git, Node.js, npm, Docker, and Docker Compose The manual source path uses all of these tools in addition to the Docker daemon.
Credentials Provider API keys and any deployment-specific values Auto-GPT cannot call your selected model or other services until the environment files contain valid credentials.

Check the VPS architecture before installing anything with your distribution’s normal system-information command. Also check free space and memory, and leave headroom for Docker’s image cache. The figures above are planning guidance from the Auto-GPT documentation, not a performance benchmark or a promise of a particular task throughput.

Choose the deployment path

There are two deployment concepts in the current documentation, but only one is a dependable copy-and-run route at the time of writing.

Characteristic Source checkout with Compose Appliance installer
Availability Documented and actionable now Release-gated; public appliance image tags are not live until release gates pass.
What runs The services defined by the repository’s Compose configuration Intended to be one published container.
Tools Git, Node.js, npm, Docker, Docker Compose, and make Docker must already be installed; the installer itself does not install Docker.
Build control You build locally with docker compose up -d --build and can inspect the checkout. The installer pulls a published image when a release is available.
Persistence Uses the platform’s named data volume, including account and generated-secret state. Also relies on the platform data volume; deleting it destroys important state.
Exposure Loopback by default; publish through a TLS reverse proxy when remote access is needed. The documentation likewise describes a loopback-only service binding.

Use the source/Compose route for this guide. The hosted script at setup.agpt.co/install.sh is currently described as serving the legacy Compose installer, while public appliance tags remain unavailable until the release gates are cleared. If you later choose the appliance route, verify that the official installer page explicitly announces a live release before executing its command.

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

Prepare the Linux VPS

Update the operating system and create an administration path

Log in over SSH with an account that can use sudo. Apply your distribution’s security updates, set the correct time zone, and confirm that the VPS firewall allows SSH from your administration address. Do not open a public application port yet; the default Auto-GPT binding is intended to remain local while you configure the service.

Install and verify Docker

Install Docker Engine using the package instructions for your Linux distribution, then enable and start its daemon. The important check is not merely that the client binary exists: both the client and the daemon must answer.

  1. Run docker -v and confirm that Docker prints a version.
  2. Run docker info. A successful result shows daemon details instead of a socket or permission error.
  3. If your SSH user receives a permission error, either run Docker commands with sudo or add the user to the Docker group according to your distribution’s policy, then start a new login session. Treat membership in the Docker group as root-equivalent access.

Auto-GPT’s installer does not install Docker for you. Resolve daemon, socket, storage-driver, or permission problems before cloning the application, because every later step depends on a healthy daemon.

Install source-path dependencies

The manual checkout also requires Git, Node.js, npm, and Docker Compose. Install versions supported by your distribution and by the current repository checkout. Confirm each executable is on the path before continuing:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • git --version
  • node --version
  • npm --version
  • docker compose version

The final command checks the Compose plugin syntax used by the current instructions. If your system only provides the obsolete hyphenated docker-compose binary, install the current Docker Compose integration as well so that the documented command works unchanged.

Clone Auto-GPT and create its environment

Fetch the repository

Choose a directory reserved for self-hosted applications, then clone the official repository:

git clone https://github.com/Significant-Gravitas/AutoGPT.git

Enter the platform directory, not the repository root:

cd AutoGPT/autogpt_platform

Keeping the checkout in a predictable directory makes upgrades and log inspection easier. Restrict write access to the account that administers the service; environment files will contain secrets.

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

Generate the initial environment files and secrets

From AutoGPT/autogpt_platform, run:

make init-env

The initialization target copies the default environment files and fills machine-specific secrets, including ENCRYPTION_KEY, UNSUBSCRIBE_SECRET_KEY, and BETTER_AUTH_SECRET. These values are generated for this installation; do not replace them with values copied from another server.

The backend will not start while ENCRYPTION_KEY is empty. If initialization did not populate it, stop and correct the environment files rather than trying to launch partially configured services. Keep the generated files private, and do not commit them to Git or paste their contents into support requests.

Add provider credentials and deployment settings

Open the generated .env files with a restricted editor and add the provider API keys and other values required by your deployment. Use the variable names already present in the templates; do not invent alternate names. Save the files with permissions that prevent other untrusted users on the VPS from reading them.

Before building, check for common configuration mistakes:

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.
  • Every required provider key is present in the file consumed by the service that needs it.
  • There are no unmatched quotation marks or accidental spaces copied into a key.
  • ENCRYPTION_KEY, UNSUBSCRIBE_SECRET_KEY, and BETTER_AUTH_SECRET are non-empty.
  • You have recorded the intended public URL, if remote access will be configured later; it must exactly match the value assigned to AUTOGPT_PUBLIC_URL.

Build and start the Compose services

With Docker running and the environment files prepared, build and launch the platform in detached mode:

docker compose up -d --build

The command builds images from the checkout and starts the backend services defined by the project’s Compose configuration. The first run can take longer than subsequent starts because images and dependencies must be downloaded and built.

Check status before opening access

Do not assume that a returned shell prompt means the application is healthy. Inspect the Compose status and logs from the same platform directory:

docker compose ps
docker compose logs --follow

Look for containers that remain running, health checks that become healthy, and startup messages without repeated authentication, migration, or missing-secret errors. Press Ctrl+C to leave a live log view; this does not stop detached containers. If a service exits, inspect its service-specific logs and correct the environment or Docker problem before proceeding.

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

The installer documentation describes a local web endpoint. Open that endpoint from the VPS itself, or use an SSH tunnel for temporary administration, while the service remains loopback-only. This avoids exposing an unfinished installation to the public internet.

Keep the default loopback binding and add HTTPS correctly

Why direct public binding is a bad first step

The platform’s default service binding is loopback-only; the installer documentation describes the appliance as exposing one loopback-only port. That design prevents unsolicited internet traffic from reaching the application while you configure accounts and credentials. Do not change it to a public bind address simply to make the page reachable from another computer.

Place a TLS reverse proxy in front

For remote use, put a maintained reverse proxy on the VPS or on a separate controlled edge host. Point a DNS name you control at the proxy, obtain a valid TLS certificate for that name, and configure the proxy to forward requests to the Auto-GPT endpoint on its loopback address. The proxy should preserve the host and forwarding headers required by your authentication and WebSocket configuration, and its firewall should expose only the TLS listener and your administration SSH policy.

Set AUTOGPT_PUBLIC_URL to the exact externally visible URL, including the scheme and any path that the proxy publishes. For example, if users visit https://agents.example.net, the variable must represent that same URL rather than the VPS hostname, an HTTP address, or an internal port. A mismatch can produce incorrect callback links, redirects, or authentication behavior.

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

After changing the environment, recreate or restart the affected services using the Compose workflow, then test from an external network:

  • The certificate is valid and the browser reaches the proxy over HTTPS.
  • The proxy forwards to the local Auto-GPT endpoint without exposing the backend port directly.
  • Links and redirects use the exact public URL.
  • Unencrypted HTTP either redirects to HTTPS or is not publicly reachable.

Use an access-control layer at the proxy or network edge when appropriate, but do not rely on obscurity. Keep provider keys and generated secrets out of proxy configuration files that are readable by unrelated accounts.

Create the first account and close open registration

Once the containers are healthy, open the local endpoint or the secured HTTPS URL and create the account intended to administer the installation. The documented promotion command uses the running autogpt container:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
docker exec autogpt autogpt-admin promote [email protected]

Replace the example address with the email used for the account you created. Run the command from an account authorized to control Docker, and verify in the web interface that the account has the expected administrator capabilities.

After the administrator account exists, add this setting to autogpt.env:

AUTH_ALLOW_NEW_ACCOUNTS=false

Recreate only the container as directed by the installer documentation so the setting is loaded, then test registration from a separate browser session. A new-account attempt should be rejected while the existing administrator can still sign in.

Never remove the named volume autogpt-platform-data. It contains accounts, agents, generated secrets, and application state. Deleting or replacing it can erase the administrator account and make the installation appear to have lost its configuration. Before upgrades or major configuration changes, take a VPS or Docker-volume snapshot using your provider’s supported backup method and confirm that the snapshot can be restored.

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

Updating without losing the installation

Source checkout updates

When you decide to update a source deployment, first record the current commit and back up the persistent data volume. Review repository changes for environment-variable or migration requirements, then fetch the new code and rebuild with the same Compose command:

docker compose up -d --build

Watch the service logs until health checks pass. Keep the environment files from the existing installation unless the updated templates require a deliberate change, and carry forward your own provider credentials without publishing them. If a release requires a database or application migration, let the documented startup process complete before judging the deployment unhealthy.

What not to delete

  • Do not remove autogpt-platform-data during a code update.
  • Do not regenerate encryption or authentication secrets casually; changing them can make existing data or sessions unusable.
  • Do not run cleanup commands that prune the named volume while trying to reclaim image-cache disk space.

If a new build fails, keep the previous checkout and its volume intact, inspect the failing service logs, and roll back the code only after preserving the error details. A clean rebuild is not a substitute for diagnosing a missing variable or incompatible change.

Appliance installer: what the documented options mean

The appliance concept is designed to pull and run one published container after Docker is installed. Its documented command-line options include --release, --preflight-only, --resolve-only, --skip-preflight, and --dir=PATH. Those switches suggest release selection, validation-only runs, image resolution, bypassing checks, and an alternate working directory.

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.

However, the current installer page warns that the hosted script still serves the legacy Compose installer and that public appliance image tags are not yet live until release gates pass. Therefore, do not turn those options into copy-and-paste production instructions until the official page confirms a released appliance image and updated installer behavior. Installing Docker and following the source/Compose procedure above is the supported actionable route now.

Troubleshooting common failures

docker info cannot connect

The Docker client is installed but the daemon is stopped, the socket path is wrong, or the SSH user lacks permission. Start and enable the Docker service, verify the daemon’s status, and retry with the appropriate privilege. If you changed group membership, establish a new SSH session before testing again.

The backend exits immediately after make init-env

Inspect the service log for missing variables. The most important required secret is ENCRYPTION_KEY; the backend will not start when it is empty. Re-run initialization only if you understand which generated values will change, then check every environment file for accidental blank or malformed entries.

Compose reports an unknown command or plugin

The source instructions use the space-separated command docker compose. Install the current Compose integration and verify it with docker compose version. Do not silently substitute an unrelated orchestration tool, because the repository’s service definitions and documented commands target Docker Compose.

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

The page works on the VPS but not from another network

That is expected while the endpoint is loopback-only. Use a TLS reverse proxy, configure DNS and a certificate, set AUTOGPT_PUBLIC_URL to the exact public address, and expose only the proxy’s HTTPS listener. Do not expose the internal application port directly as a shortcut.

Users are unexpectedly able to register

Confirm that AUTH_ALLOW_NEW_ACCOUNTS=false is present in autogpt.env, then recreate the intended container so it reads the new value. Test in a private browser session. If the setting disappears after a rebuild, check that you edited the environment file used by the Compose service rather than a similarly named template.

The administrator account or agents disappeared

Check that the Compose project still mounts autogpt-platform-data and that you did not remove or replace that named volume. Restore the most recent verified VPS or volume snapshot if the data was deleted. Recreating containers is normally different from deleting the persistent volume; preserve the volume during routine maintenance.

Installation checklist

  • Linux VPS uses amd64 or arm64.
  • Docker daemon responds to both docker -v and docker info.
  • Approximately 25 GB of free disk and at least 8 GB RAM are available.
  • Git, Node.js, npm, Docker Compose, and make are installed for the source path.
  • The repository is cloned and the shell is inside AutoGPT/autogpt_platform.
  • make init-env generated private environment files and non-empty secrets.
  • Provider credentials are present without being committed or exposed.
  • docker compose up -d --build completes and containers become healthy.
  • The service remains loopback-only until a TLS reverse proxy is configured.
  • AUTOGPT_PUBLIC_URL exactly matches the external HTTPS address.
  • The administrator is promoted with docker exec autogpt autogpt-admin promote [email protected].
  • AUTH_ALLOW_NEW_ACCOUNTS=false is loaded and new registration is closed.
  • autogpt-platform-data is preserved and included in backups.

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.

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

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 from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
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.