---
title: "Deploy Linkwarden | Open-Source Bookmark Manager"
description: "Self Host Linkwarden. Save, archive, organize bookmarks & much more"
category: "Other"
url: https://railway.com/deploy/linkwarden
---

# Deploy Linkwarden | Open-Source Bookmark Manager

Self Host Linkwarden. Save, archive, organize bookmarks & much more

**[Deploy Linkwarden | Open-Source Bookmark Manager on Railway](https://railway.com/template/linkwarden)**

- **Creator:** Heimdall
- **Category:** Other
- **Total deploys:** 12

## Template content

### Meilisearch https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/meilisearch.svg

- **Image:** getmeili/meilisearch:v1.12.8

### Postgres https://devicons.railway.app/i/postgresql.svg

- **Image:** ghcr.io/railwayapp-templates/postgres-ssl:18

### Linkwarden https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/linkwarden.png

- **Image:** ghcr.io/linkwarden/linkwarden:latest
- **Public domain:** Yes

## Documentation

# Deploy and Host Linkwarden on Railway

Deploy Linkwarden on Railway to run a self-hosted collaborative bookmark manager with built-in webpage archiving. Linkwarden lets teams and individuals collect, organize, annotate, and fully preserve web content — capturing screenshots, PDFs, and readable text of every saved link before it disappears.

This Railway template pre-configures Linkwarden with PostgreSQL for persistent storage and Meilisearch for fast full-text search, so you can self-host Linkwarden and start bookmarking in minutes.

![Linkwarden Railway architecture](https://res.cloudinary.com/asset-cloudinary/image/upload/v1776950676/51f5a4b5-cc87-4e17-b2bd-37b1c94aa55c.png)

## Getting Started with Linkwarden on Railway

Once the deploy completes, open your Railway-generated public URL. You'll land on the Linkwarden login page. Click **Sign Up** to create your first account — the first user registered becomes the server administrator.

After registration, you'll see the main dashboard. Create your first **Collection** to organize bookmarks by topic or project. Paste any URL into the "New Link" field and Linkwarden will automatically capture a screenshot, PDF, and readable text of the page. Install the [browser extension](https://docs.linkwarden.app/getting-started/browser-extension) for Chrome or Firefox to save links with one click from any webpage.

To lock down your instance after setup, set `NEXT_PUBLIC_DISABLE_REGISTRATION=true` in your Railway service variables.

## About Hosting Linkwarden

Linkwarden is an open-source bookmark manager built with Next.js that goes beyond simple link saving. It archives entire webpages so your bookmarks survive even when the original content is taken down or changed.

- **Webpage preservation** — auto-captures screenshots, PDFs, and readable text for every saved link
- **Collections & tags** — organize with nested collections, sub-collections, and custom tags
- **Full-text search** — powered by Meilisearch for instant results across all saved content
- **Team collaboration** — shared collections with granular permissions for groups and projects
- **Reader view** — clean reading mode with highlighting and annotation support
- **AI tagging** — optional AI-powered automatic tag suggestions (supports OpenAI, Anthropic, Ollama)
- **Browser extensions** — official Chrome and Firefox extensions for one-click saving
- **RSS feeds** — subscribe to feeds and auto-save new articles
- **50+ SSO providers** — GitHub, Google, Discord, Keycloak, Authentik, and more

The Railway deployment runs three services: the Linkwarden Next.js application, a PostgreSQL database for link and user data, and Meilisearch for search indexing.

## Why Deploy Linkwarden on Railway

- One-click deploy with PostgreSQL and Meilisearch pre-configured
- Persistent volumes for archived content and search indexes
- Automatic HTTPS with Railway's TLS termination
- Scale resources up as your bookmark collection grows
- No vendor lock-in — export your data anytime

## Common Use Cases for Self-Hosted Linkwarden

- **Research & academia** — archive papers, articles, and references with annotations before they go offline
- **Team knowledge bases** — shared bookmark collections for development documentation, design resources, and project references
- **Content curation** — save, tag, and organize web content for writing, marketing, or content planning workflows
- **Personal web archiving** — preserve important webpages with full PDF and screenshot backups you control

## Dependencies for Linkwarden on Railway

- **Linkwarden** — `ghcr.io/linkwarden/linkwarden:latest` — main application (Next.js)
- **PostgreSQL** — Railway-managed PostgreSQL 16 — primary database for users, collections, and links
- **Meilisearch** — `getmeili/meilisearch:v1.12.8` — full-text search engine for instant link search

### Environment Variables Reference for Linkwarden

| Variable | Service | Description |
|----------|---------|-------------|
| `NEXTAUTH_SECRET` | Linkwarden | JWT signing secret for NextAuth.js sessions |
| `NEXTAUTH_URL` | Linkwarden | Authentication callback URL |
| `DATABASE_URL` | Linkwarden | PostgreSQL connection string |
| `MEILI_HOST` | Linkwarden | Meilisearch internal URL for search queries |
| `MEILI_MASTER_KEY` | Both | Shared authentication key for Meilisearch API |
| `STORAGE_FOLDER` | Linkwarden | Directory for archived screenshots and PDFs |
| `NEXT_PUBLIC_DISABLE_REGISTRATION` | Linkwarden | Lock registration after initial setup |

### Deployment Dependencies

- **Runtime:** Node.js 18+ (included in Docker image)
- **Docker Hub:** [ghcr.io/linkwarden/linkwarden](https://github.com/linkwarden/linkwarden/pkgs/container/linkwarden)
- **GitHub:** [linkwarden/linkwarden](https://github.com/linkwarden/linkwarden)
- **Docs:** [docs.linkwarden.app](https://docs.linkwarden.app/)

## Hardware Requirements for Self-Hosting Linkwarden

| Resource | Minimum | Recommended |
|----------|---------|-------------|
| CPU | 1 vCPU | 2 vCPUs |
| RAM | 2 GB | 4 GB |
| Storage | 5 GB | 20 GB+ (scales with archived content) |
| Runtime | Docker 20+ | Docker 24+ with Compose v2 |

Storage requirements grow with your bookmark collection — each archived link generates a screenshot, PDF, and text extract. Offload to S3-compatible storage via `SPACES_*` env vars for large collections.

## Self-Hosting Linkwarden with Docker Compose

Clone the repository and configure your environment:

```
git clone https://github.com/linkwarden/linkwarden.git
cd linkwarden
cp .env.sample .env
```

Edit `.env` with your database credentials and secrets, then start all services:

```
# docker-compose.yml (simplified)
services:
  linkwarden:
    image: ghcr.io/linkwarden/linkwarden:latest
    ports:
      - "3000:3000"
    env_file:
      - .env
    volumes:
      - linkwarden-data:/data/data
    depends_on:
      - postgres
      - meilisearch

  postgres:
    image: postgres:16-alpine
    volumes:
      - postgres-data:/var/lib/postgresql/data

  meilisearch:
    image: getmeili/meilisearch:v1.12.8
    volumes:
      - meili-data:/meili_data
```

```
docker compose up -d
```

Open `http://localhost:3000` and create your first account.

## How Much Does Linkwarden Cost to Self-Host?

Linkwarden is fully open-source under the AGPL-3.0 license. All features are available for free when self-hosting. The team also offers a managed cloud subscription at [linkwarden.app](https://linkwarden.app/) for those who prefer not to manage infrastructure. On Railway, your only cost is the infrastructure usage — typically $5–15/month depending on storage and traffic.

## Linkwarden vs Raindrop.io

| Feature | Linkwarden | Raindrop.io |
|---------|-----------|-------------|
| Self-hosted | Yes | No (cloud only) |
| Open source | Yes (AGPL-3.0) | No |
| Webpage archiving | Screenshots + PDF + text | Cached copy (paid) |
| Team collaboration | Yes (free) | Yes (paid plan) |
| Full-text search | Meilisearch-powered | Built-in |
| Browser extensions | Chrome, Firefox | Chrome, Firefox, Safari |
| AI tagging | Optional (BYOK) | No |
| Pricing | Free (self-host) | Free tier / $3+/mo |

Linkwarden is the stronger choice for teams that need data ownership, full webpage preservation, and unlimited collections without subscription costs.

## FAQ

**What is Linkwarden and why should I self-host it?**
Linkwarden is an open-source collaborative bookmark manager that archives webpages as screenshots, PDFs, and readable text. Self-hosting gives you full control over your data, unlimited storage, and no subscription fees.

**What does this Railway template deploy for Linkwarden?**
This template deploys three services: the Linkwarden Next.js application, a PostgreSQL database for storing links and user data, and Meilisearch for fast full-text search across all your saved content.

**Why does the Linkwarden Railway template include Meilisearch?**
Meilisearch powers Linkwarden's instant search feature. Without it, you can still save and organize links, but full-text search across archived content won't be available. It runs as a lightweight internal service with its own persistent volume.

**How do I enable SSO login for self-hosted Linkwarden on Railway?**
Set the OAuth provider's environment variables (e.g., `NEXT_PUBLIC_KEYCLOAK_ENABLED=true`, `KEYCLOAK_ISSUER`, `KEYCLOAK_CLIENT_ID`, `KEYCLOAK_CLIENT_SECRET`) in your Linkwarden service on Railway. Linkwarden supports 50+ OAuth providers including GitHub, Google, Keycloak, and Authentik.

**Can I import bookmarks into self-hosted Linkwarden?**
Yes. Linkwarden supports importing bookmarks from HTML files exported by Chrome, Firefox, Pocket, Raindrop.io, and other bookmark managers. Go to Settings → Import in the Linkwarden dashboard to upload your export file.

**How do I back up my Linkwarden data on Railway?**
Your data lives in two places: the PostgreSQL database (connection details in `DATABASE_URL`) and the `/data/data` volume (archived files). Use `pg_dump` for database backups and Railway's volume snapshot feature for file backups.


## Similar templates

- [Rocky Linux](https://railway.com/deploy/rocky-linux) — Hosted Rocky Linux 9 workspace with SSH and persistent storage. 🚀
- [Foundry Virtual Tabletop](https://railway.com/deploy/X5tR6G) — A Self-Hosted & Modern Roleplaying Platform
- [Letta Code Remote](https://railway.com/deploy/letta-code-remote) — Run a Letta Code agent 24/7. No inbound ports, just deploy.

Open this page in a browser: https://railway.com/deploy/linkwarden
