How to Install ArchiveBox on an Ubuntu VPS in India
Install ArchiveBox on an Ubuntu VPS with Docker Compose or without Docker. Check architecture, RAM, swap, and the setup steps before archiving your first page.
To install ArchiveBox on an Ubuntu VPS in India, choose a supported Ubuntu server with an amd64 or arm64 CPU, then follow the same installation steps used elsewhere: Docker Compose is the project’s recommended route; apt or uv are alternatives if you do not want Docker. The reviewed ArchiveBox documentation does not specify India-specific commands, package sources, or resource requirements.
Before creating the VPS, check its architecture, memory, and storage. ArchiveBox lists 1 GB RAM as a minimum and recommends 2 GB or more. For full default crawls on a 1 GB VPS, it advises at least 4 GB of swap. These are project recommendations, not a guarantee that a particular workload will fit.
1. Choose a VPS and installation method
| Choice | Best fit | What to know |
|---|---|---|
| Docker Compose | Most installations | Project-recommended setup and update experience, with bundled extras. Requires Docker Engine or Docker Desktop and Compose v2. |
| Ubuntu apt package | Readers avoiding Docker who want the project’s package instructions | The documented apt repository is a third-party dev channel; check the current instructions before running them. |
| uv | Readers who want a Python-based install | Requires Python 3.13 and runtime dependencies. The setup shortcut alone does not initialize a collection or start a service. |
The Docker image documentation lists Linux amd64 and arm64 support. Verify the VPS architecture and Ubuntu version against the current ArchiveBox installation guide before provisioning.
2. Install ArchiveBox with Docker Compose
These are the documented quickstart commands. They download the project’s Compose file, pull the image, and start the service. The project recommends checking the live repository for the current Compose configuration and instructions before use.
mkdir -p ~/archivebox/data && cd ~/archivebox
curl -fsSL https://raw.githubusercontent.com/ArchiveBox/docker-archivebox/main/docker-compose.yml -o docker-compose.yml
docker compose pull
docker compose up -d --wait
This route requires Docker Compose v2. Once the service starts, open http://YOUR_VPS_HOST_OR_IP/admin/ in a browser and complete the setup wizard. Use the actual hostname or IP you use to reach the VPS. If BASE_URL is not configured, the Quickstart says to continue through the wizard.
Add a first URL from the directory containing the Compose file:
cd ~/archivebox
docker compose exec archivebox archivebox add 'https://example.com'
Replace the example URL with a page you are authorized to archive. The official Quickstart describes the project as taking about five minutes to get up and running; that is ArchiveBox’s estimate, not an independently measured setup time.
3. Check the service and archive a page
- Confirm that
docker compose up -d --waitfinishes without reporting a failed service. - Visit
/admin/on the VPS hostname or IP and complete initial setup. - Run the
archivebox addcommand above for a first URL. - Use the admin interface and collection directory to confirm the result and available archived content.
For command details and current deployment guidance, use the official Docker repository and ArchiveBox Quickstart.
4. VPS memory, swap, and storage
- RAM: 1 GB is the published minimum; 2 GB or more is recommended.
- Swap: on a 1 GB VPS, ArchiveBox advises at least 4 GB of swap before full default crawls. Swap helps with memory pressure but does not make a small VPS equivalent to a larger one.
- Chrome-based archiving: the installation page says it can be disabled with
CHROME_ENABLED=Falseor theUSE_CHROMEalias to reduce crawl-time memory pressure. Some browser-dependent capture behavior will consequently be unavailable. - Disk: storage needs depend on the size and type of the collection. The reviewed sources do not give a fixed disk estimate. ArchiveBox recommends considering a filesystem with compression or deduplication, such as ZFS or BTRFS; this is an efficiency suggestion, not an installation requirement.
- Architecture: the cited Docker deployment publishes Linux
amd64andarm64images. Confirm your selected image and OS support on the live project page.
Do not infer a required Indian region, provider, package mirror, or network path from the installation guide. The reviewed official sources frame installation around Ubuntu, architecture, resources, and deployment method.
5. Install on Ubuntu without Docker
Option A: apt repository
The current installation guide documents this apt sequence. It adds the project’s third-party dev repository, installs the package, initializes a collection, installs runtime dependencies, and adds a URL. Since the repository channel and commands can change, read the live installation instructions before executing them.
echo 'deb [trusted=yes] https://archivebox.github.io/debian-archivebox dev main' | sudo tee /etc/apt/sources.list.d/archivebox.list
sudo apt update
sudo apt install archivebox
mkdir -p ~/archivebox/data
cd ~/archivebox/data
archivebox init
sudo archivebox install
archivebox add 'https://example.com'
The project describes the apt package as a thin dev-channel wrapper around its normal Python installation. archivebox install installs runtime dependencies for enabled extractors; the page says it uses apt for missing system dependencies while preserving ownership of the user-owned collection. The commands above initialize and populate a collection; they do not by themselves document a remotely accessible web service configuration.
Option B: uv
The project also documents installing ArchiveBox with uv, Python 3.13, and an explicit prerelease version range. Because that range is version-sensitive, take the exact current command from the live installation page instead of copying a stale version pin. The documented flow still needs a collection initialization and runtime dependency installation:
# Install ArchiveBox using the current uv command and version range
# from https://github.com/ArchiveBox/ArchiveBox/wiki/Install
mkdir -p ~/archivebox/data
cd ~/archivebox/data
archivebox init
archivebox install
archivebox add 'https://example.com'
The get.archivebox.io shortcut invokes the setup script for the uv install, but it does not initialize a collection, install runtime dependencies, or start a server. Complete those steps separately using the live instructions.
6. Remote access and ongoing operation
The Quickstart directs users to open /admin/ using the hostname or IP used to reach ArchiveBox. The sources cited here do not establish a complete production configuration for a public firewall, TLS termination, reverse proxy, or backup schedule, so do not treat the quickstart commands as a complete internet-exposure hardening guide. Consult current ArchiveBox deployment guidance and your VPS provider’s operational documentation for those choices.
For collection durability, plan storage according to what you archive and maintain backups appropriate to your needs. The reviewed sources do not prescribe a backup product, retention policy, or storage capacity figure.
7. Troubleshooting
| Symptom | Likely cause | What to check |
|---|---|---|
docker compose is unavailable |
Docker Compose v2 is missing or the Docker installation differs from the documented prerequisites. | Install/configure Docker Engine and Compose v2 according to their current official instructions, then retry from ~/archivebox. |
| Image pull fails or reports an incompatible platform | Architecture mismatch, registry/network issue, or an outdated local setup. | Check whether the VPS is amd64 or arm64 and confirm the current image support and pull instructions in the official Docker repository. |
| Service does not become ready | Container startup error, insufficient resources, or a changed Compose configuration. | Inspect the Compose service status and logs with docker compose ps and docker compose logs; compare your file with the current repository instructions. |
/admin/ does not load |
Wrong hostname/IP, service not running, or network access to the service is not available. | Confirm the service is running, use the same reachable hostname or IP in the URL, and check the network path and deployment configuration. |
| Setup wizard asks for configuration | BASE_URL may not be configured. |
Follow the Quickstart wizard using the hostname or IP by which you access ArchiveBox. |
| Archive command cannot find the service | The command is being run outside the Compose project directory or the service name/configuration differs. | Run it from ~/archivebox and verify the current Compose service name in the downloaded file. |
| Out-of-memory errors or slow crawls | Memory-intensive crawl settings, browser-based archiving, or too little VPS memory. | Use the project’s 2 GB+ recommendation where possible; on 1 GB, its guide advises 4 GB swap for full default crawls. Consider disabling Chrome with the documented setting if its capture behavior is not needed. |
apt update or package install fails |
Repository connectivity/configuration or changed package instructions. | Recheck the live installation guide and the repository entry, then retry the documented apt steps. |
| Some archived content is missing | The source site may block access, content may require interaction, or an extractor/runtime dependency may be unavailable. | Check the ArchiveBox output and enabled extractor dependencies; run the documented archivebox install where applicable and consult current project documentation. |
8. Performance, reliability, and cost
ArchiveBox’s resource use depends on the collection and enabled extractors. The project provides a minimum and recommended RAM figure and a swap recommendation for a particular low-memory case, but the cited sources do not publish a universal crawl speed, storage-per-page figure, or provider-specific VPS price. Size the VPS based on your expected collection and monitor disk and memory as it grows.
Docker Compose is the project’s recommended setup and update path, but a successful startup does not by itself establish a production-ready public deployment. Keep the Compose configuration aligned with the live project guidance and make a backup plan for the collection data. No India-specific price or performance claim is supported by the sources reviewed.
Or skip the browser setup
If your immediate goal is a screenshot of a web page rather than a locally managed archive, ScreenshotNeo is a website screenshot API and MCP server. One GET request returns a PNG, JPEG, WebP, or PDF. The example below requests a WebP capture; see the ScreenshotNeo API docs for options and response details.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://example.com -o shot.webp
import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://example.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://example.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
- Cookie and consent banners, newsletter popups, and chat widgets are removed before the shot; each cleanup step can be disabled.
- Bot checks, blank pages, failed loads, timeouts, and cache hits are not billed; response headers identify the page verdict and billing status.
- An MCP server provides
take_screenshot,get_page_info, andcapture_pdftools for Claude, Cursor, and other MCP clients. - 1,000 screenshots a month are free with no card; paid plans start at $5 for 3,000 screenshots.
Sign up for ScreenshotNeo and get 1,000 free screenshots a month, with no card required.
FAQ
Does installing ArchiveBox on an Indian VPS require different commands?
The reviewed official instructions do not list country-specific installation steps. Follow the Ubuntu and architecture requirements for your VPS.
What VPS specs do I need for ArchiveBox?
The project lists 1 GB RAM minimum, recommends 2 GB or more, and advises 4 GB swap for full default crawls on a 1 GB VPS. Storage depends on what you archive.
Can I install ArchiveBox on Ubuntu without Docker?
Yes. The project documents apt and uv paths. Both require initialization and runtime dependencies; the uv shortcut alone does not create a collection or start a server.
Does the Compose quickstart configure a secure public deployment?
The cited quickstart covers starting the service and completing admin setup. It does not provide a complete public firewall, TLS, reverse-proxy, or backup configuration.


