Linkding is a self-hosted bookmark manager that replaces Pinboard with tag organization, automated page archiving, and complete personal data privacy.
Linkding is a self-hosted bookmark manager focused on speed and minimal visual clutter. It runs as a lightweight service on personal hardware, storing saved web links, reading queues, and offline page archives under direct user control.
Pinboard popularized fast, text-first bookmarking with tags, but it remains a closed cloud service where your browsing history, private notes, and saved links sit on someone else's infrastructure. Linkding mirrors that distraction-free workflow while shifting ownership entirely to you. Every bookmark, tag hierarchy, and search query lives in a local database on your own server, completely shielded from subscription price changes, service downtime, or third-party tracking.
The operational trade-off centers on setup and ongoing maintenance. Pinboard requires zero administration beyond paying for an account, yet its development has stalled and page archiving requires an expensive tier. Linkding provides automatic local page snapshots and Internet Archive syncing without ongoing fees, but it expects you to run a single container and manage regular database backups. For anyone seeking long-term control over their personal web library without recurring costs, Linkding provides an independent alternative to aging commercial services.
Can Linkding replace Pinboard? Yes. Linkding replicates Pinboard's tag-based bookmarking and fast search while adding local page snapshots and an ad-free interface.
Is Linkding difficult to set up for personal use? Most users deploy it as a single container on a home server or inexpensive cloud instance in a few minutes, with automated migrations handling subsequent updates.
Does Linkding offer mobile apps? While Linkding lacks standalone app store downloads, its web interface functions as an installable Progressive Web App that works smoothly on mobile browsers.
Linkding is an ideal choice for readers who prioritize speed and data ownership over flashy social discovery boards. With active development continuing through 2026 and an MIT license that ensures permanent access to your data and codebase, it stands as one of the most reliable self-hosted bookmarking tools available today.
We started this exact setup from scratch in a clean Linux machine on Nov 2, 2026 and checked it through Linkding's own API: every check passed. Recipes are re-checked regularly and removed if they stop working.
mkdir -p linkding && cd linkding
curl -fsSL https://open-source.store/tools/linkding/compose.yml -o compose.ymlcat > .env <<EOF
LD_SUPERUSER_NAME=admin
LD_SUPERUSER_PASSWORD=$(openssl rand -hex 12)
LD_CSRF_TRUSTED_ORIGINS=http://localhost:9090
EOFLD_SUPERUSER_NAME — Initial superuser username for administrative access.LD_SUPERUSER_PASSWORD — Initial superuser password for administrative access. Generated above; keep it secret.LD_CSRF_TRUSTED_ORIGINS — Base URL of the linkding instance for CSRF verification, e.g. https://linkding.example.com.docker compose up -dservices:
linkding:
image: sissbruecker/linkding:1.47.0
ports:
- "9090:9090"
environment:
LD_SUPERUSER_NAME: ${LD_SUPERUSER_NAME}
LD_SUPERUSER_PASSWORD: ${LD_SUPERUSER_PASSWORD}
LD_CSRF_TRUSTED_ORIGINS: ${LD_CSRF_TRUSTED_ORIGINS}
volumes:
- linkding-data:/etc/linkding/data
restart: unless-stopped
healthcheck:
test: ["CMD-SHELL", "curl -f http://localhost:9090/health || exit 1"]
interval: 10s
timeout: 5s
retries: 5
volumes:
linkding-data:
Free IDE for Java, Kotlin, Go, TypeScript and Python. Built on IntelliJ Community, fully open source, 300+ plugins.
Show that Linkding is listed as an open-source alternative. Paste into your README:
Ubuntu 24.04 · Apple container, Docker 29.1.3, Compose 2.40.3+ds1-0ubuntu1~24.04.1. Images pulled in 22 s: sissbruecker/linkding:1.47.0.
Based on the upstream setup. Official docker-compose setup pinned to 1.47.0 with SQLite database, initial superuser credentials and CSRF trusted origins declared in .env, and container healthcheck.
linkding-1 | 2026-11-02T03:58:59.155677887Z [pid: 20|app: 0|req: 8968/17481] ::ffff:192.168.65.58 () {32 vars in 485 bytes} [Mon Nov 2 03:58:59 2026] GET /sites/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.156269221Z 2026-11-02 03:58:59,156 WARNING Not Found: /private/auth.json
linkding-1 | 2026-11-02T03:58:59.156571596Z 2026-11-02 03:58:59,156 WARNING Not Found: /secure/auth.json
linkding-1 | 2026-11-02T03:58:59.156573929Z [pid: 19|app: 0|req: 8513/17482] ::ffff:192.168.65.58 () {32 vars in 462 bytes} [Mon Nov 2 03:58:59 2026] GET /secure/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.156575179Z [pid: 19|app: 0|req: 8513/17483] ::ffff:192.168.65.58 () {32 vars in 464 bytes} [Mon Nov 2 03:58:59 2026] GET /private/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.157307054Z 2026-11-02 03:58:59,157 WARNING Not Found: /secret/auth.json
linkding-1 | 2026-11-02T03:58:59.157325137Z [pid: 19|app: 0|req: 8514/17484] ::ffff:192.168.65.58 () {32 vars in 500 bytes} [Mon Nov 2 03:58:59 2026] GET /secret/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.157551387Z 2026-11-02 03:58:59,157 WARNING Not Found: /secure/auth.json
linkding-1 | 2026-11-02T03:58:59.157839887Z [pid: 20|app: 0|req: 8969/17485] ::ffff:192.168.65.58 () {32 vars in 501 bytes} [Mon Nov 2 03:58:59 2026] GET /secure/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.158404054Z 2026-11-02 03:58:59,158 WARNING Not Found: /secret/auth.json
linkding-1 | 2026-11-02T03:58:59.158653679Z 2026-11-02 03:58:59,158 WARNING Not Found: /secrets/auth.json
linkding-1 | 2026-11-02T03:58:59.158700596Z [pid: 19|app: 0|req: 8516/17486] ::ffff:192.168.65.58 () {32 vars in 503 bytes} [Mon Nov 2 03:58:59 2026] GET /secrets/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.158714471Z [pid: 19|app: 0|req: 8516/17487] ::ffff:192.168.65.58 () {32 vars in 462 bytes} [Mon Nov 2 03:58:59 2026] GET /secret/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.159743887Z 2026-11-02 03:58:59,159 WARNING Not Found: /secrets/auth.json
linkding-1 | 2026-11-02T03:58:59.160160471Z 2026-11-02 03:58:59,160 WARNING Not Found: /env/auth.json
linkding-1 | 2026-11-02T03:58:59.160218929Z [pid: 19|app: 0|req: 8518/17488] ::ffff:192.168.65.58 () {32 vars in 499 bytes} [Mon Nov 2 03:58:59 2026] GET /env/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.160296429Z [pid: 19|app: 0|req: 8518/17489] ::ffff:192.168.65.58 () {32 vars in 488 bytes} [Mon Nov 2 03:58:59 2026] GET /secrets/auth.json => generated 179 bytes in 1 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.160872762Z 2026-11-02 03:58:59,160 WARNING Not Found: /env/auth.json
linkding-1 | 2026-11-02T03:58:59.161344054Z 2026-11-02 03:58:59,161 WARNING Not Found: /environment/auth.json
linkding-1 | 2026-11-02T03:58:59.161405804Z [pid: 20|app: 0|req: 8970/17490] ::ffff:192.168.65.58 () {32 vars in 478 bytes} [Mon Nov 2 03:58:59 2026] GET /env/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.161628054Z [pid: 19|app: 0|req: 8519/17491] ::ffff:192.168.65.58 () {32 vars in 505 bytes} [Mon Nov 2 03:58:59 2026] GET /environment/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.162102971Z 2026-11-02 03:58:59,162 WARNING Not Found: /test/auth.json
linkding-1 | 2026-11-02T03:58:59.162550512Z 2026-11-02 03:58:59,162 WARNING Not Found: /environment/auth.json
linkding-1 | 2026-11-02T03:58:59.162634554Z [pid: 20|app: 0|req: 8971/17492] ::ffff:192.168.65.58 () {32 vars in 458 bytes} [Mon Nov 2 03:58:59 2026] GET /test/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.162786304Z [pid: 19|app: 0|req: 8520/17493] ::ffff:192.168.65.58 () {32 vars in 478 bytes} [Mon Nov 2 03:58:59 2026] GET /environment/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.163472554Z 2026-11-02 03:58:59,163 WARNING Not Found: /test/auth.json
linkding-1 | 2026-11-02T03:58:59.163559471Z [pid: 19|app: 0|req: 8521/17494] ::ffff:192.168.65.58 () {32 vars in 499 bytes} [Mon Nov 2 03:58:59 2026] GET /test/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.164074804Z 2026-11-02 03:58:59,164 WARNING Not Found: /tests/auth.json
linkding-1 | 2026-11-02T03:58:59.164249429Z [pid: 20|app: 0|req: 8972/17495] ::ffff:192.168.65.58 () {32 vars in 459 bytes} [Mon Nov 2 03:58:59 2026] GET /tests/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.164750929Z 2026-11-02 03:58:59,164 WARNING Not Found: /tests/auth.json
linkding-1 | 2026-11-02T03:58:59.164837762Z [pid: 20|app: 0|req: 8973/17496] ::ffff:192.168.65.58 () {32 vars in 501 bytes} [Mon Nov 2 03:58:59 2026] GET /tests/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.164930846Z 2026-11-02 03:58:59,164 WARNING Not Found: /dev/auth.json
linkding-1 | 2026-11-02T03:58:59.164970054Z [pid: 19|app: 0|req: 8522/17497] ::ffff:192.168.65.58 () {32 vars in 479 bytes} [Mon Nov 2 03:58:59 2026] GET /dev/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.165784512Z 2026-11-02 03:58:59,165 WARNING Not Found: /dev/auth.json
linkding-1 | 2026-11-02T03:58:59.165786679Z 2026-11-02 03:58:59,165 WARNING Not Found: /development/auth.json
linkding-1 | 2026-11-02T03:58:59.165787596Z [pid: 19|app: 0|req: 8523/17498] ::ffff:192.168.65.58 () {32 vars in 457 bytes} [Mon Nov 2 03:58:59 2026] GET /dev/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.165813762Z [pid: 20|app: 0|req: 8974/17499] ::ffff:192.168.65.58 () {32 vars in 512 bytes} [Mon Nov 2 03:58:59 2026] GET /development/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.166696637Z 2026-11-02 03:58:59,166 WARNING Not Found: /development/auth.json
linkding-1 | 2026-11-02T03:58:59.167154929Z 2026-11-02 03:58:59,167 WARNING Not Found: /staging/auth.json
linkding-1 | 2026-11-02T03:58:59.167206762Z [pid: 20|app: 0|req: 8975/17500] ::ffff:192.168.65.58 () {32 vars in 511 bytes} [Mon Nov 2 03:58:59 2026] GET /development/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.167272346Z [pid: 19|app: 0|req: 8524/17501] ::ffff:192.168.65.58 () {32 vars in 465 bytes} [Mon Nov 2 03:58:59 2026] GET /staging/auth.json => generated 179 bytes in 1 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.168194346Z 2026-11-02 03:58:59,168 WARNING Not Found: /staging/auth.json
linkding-1 | 2026-11-02T03:58:59.168723346Z [pid: 20|app: 0|req: 8977/17502] ::ffff:192.168.65.58 () {32 vars in 465 bytes} [Mon Nov 2 03:58:59 2026] GET /staging/auth.json => generated 179 bytes in 1 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.168746096Z 2026-11-02 03:58:59,168 WARNING Not Found: /prod/auth.json
linkding-1 | 2026-11-02T03:58:59.168812929Z [pid: 20|app: 0|req: 8977/17503] ::ffff:192.168.65.58 () {32 vars in 496 bytes} [Mon Nov 2 03:58:59 2026] GET /prod/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.169440221Z 2026-11-02 03:58:59,169 WARNING Not Found: /prod/auth.json
linkding-1 | 2026-11-02T03:58:59.169442262Z [pid: 20|app: 0|req: 8978/17504] ::ffff:192.168.65.58 () {32 vars in 497 bytes} [Mon Nov 2 03:58:59 2026] GET /prod/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.169556512Z 2026-11-02 03:58:59,169 WARNING Not Found: /production/auth.json
linkding-1 | 2026-11-02T03:58:59.169614471Z [pid: 19|app: 0|req: 8525/17505] ::ffff:192.168.65.58 () {32 vars in 456 bytes} [Mon Nov 2 03:58:59 2026] GET /production/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.170470596Z 2026-11-02 03:58:59,170 WARNING Not Found: /production/auth.json
linkding-1 | 2026-11-02T03:58:59.170472804Z 2026-11-02 03:58:59,170 WARNING Not Found: /includes/auth.json
linkding-1 | 2026-11-02T03:58:59.170575637Z [pid: 19|app: 0|req: 8526/17507] ::ffff:192.168.65.58 () {32 vars in 511 bytes} [Mon Nov 2 03:58:59 2026] GET /production/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.171263012Z 2026-11-02 03:58:59,171 WARNING Not Found: /include/auth.json
linkding-1 | 2026-11-02T03:58:59.171284637Z [pid: 20|app: 0|req: 8979/17507] ::ffff:192.168.65.58 () {32 vars in 468 bytes} [Mon Nov 2 03:58:59 2026] GET /includes/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.171569471Z [pid: 19|app: 0|req: 8527/17508] ::ffff:192.168.65.58 () {32 vars in 515 bytes} [Mon Nov 2 03:58:59 2026] GET /include/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.171786387Z 2026-11-02 03:58:59,171 WARNING Not Found: /includes/auth.json
linkding-1 | 2026-11-02T03:58:59.172438971Z 2026-11-02 03:58:59,172 WARNING Not Found: /lib/auth.json
linkding-1 | 2026-11-02T03:58:59.172552929Z [pid: 20|app: 0|req: 8981/17509] ::ffff:192.168.65.58 () {32 vars in 507 bytes} [Mon Nov 2 03:58:59 2026] GET /includes/auth.json => generated 179 bytes in 1 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.172684679Z [pid: 20|app: 0|req: 8981/17510] ::ffff:192.168.65.58 () {32 vars in 456 bytes} [Mon Nov 2 03:58:59 2026] GET /lib/auth.json => generated 179 bytes in 1 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.173267137Z 2026-11-02 03:58:59,173 WARNING Not Found: /include/auth.json
linkding-1 | 2026-11-02T03:58:59.173269346Z [pid: 20|app: 0|req: 8982/17511] ::ffff:192.168.65.58 () {32 vars in 451 bytes} [Mon Nov 2 03:58:59 2026] GET /include/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.173486304Z 2026-11-02 03:58:59,173 WARNING Not Found: /libs/auth.json
linkding-1 | 2026-11-02T03:58:59.173951679Z 2026-11-02 03:58:59,173 WARNING Not Found: /lib/auth.json
linkding-1 | 2026-11-02T03:58:59.174020887Z [pid: 19|app: 0|req: 8529/17512] ::ffff:192.168.65.58 () {32 vars in 487 bytes} [Mon Nov 2 03:58:59 2026] GET /libs/auth.json => generated 179 bytes in 1 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.174355971Z [pid: 19|app: 0|req: 8529/17513] ::ffff:192.168.65.58 () {32 vars in 446 bytes} [Mon Nov 2 03:58:59 2026] GET /lib/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.174684512Z 2026-11-02 03:58:59,174 WARNING Not Found: /libs/auth.json
linkding-1 | 2026-11-02T03:58:59.175177179Z [pid: 20|app: 0|req: 8983/17514] ::ffff:192.168.65.58 () {32 vars in 497 bytes} [Mon Nov 2 03:58:59 2026] GET /libs/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.175635429Z 2026-11-02 03:58:59,175 WARNING Not Found: /library/auth.json
linkding-1 | 2026-11-02T03:58:59.176037762Z 2026-11-02 03:58:59,175 WARNING Not Found: /library/auth.json
linkding-1 | 2026-11-02T03:58:59.176081971Z [pid: 20|app: 0|req: 8984/17515] ::ffff:192.168.65.58 () {32 vars in 456 bytes} [Mon Nov 2 03:58:59 2026] GET /library/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.176309846Z [pid: 19|app: 0|req: 8530/17516] ::ffff:192.168.65.58 () {32 vars in 464 bytes} [Mon Nov 2 03:58:59 2026] GET /library/auth.json => generated 179 bytes in 1 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.177013096Z 2026-11-02 03:58:59,176 WARNING Not Found: /vendor/auth.json
linkding-1 | 2026-11-02T03:58:59.177448096Z 2026-11-02 03:58:59,177 WARNING Not Found: /vendor/auth.json
linkding-1 | 2026-11-02T03:58:59.178035304Z [pid: 20|app: 0|req: 8986/17518] ::ffff:192.168.65.58 () {32 vars in 501 bytes} [Mon Nov 2 03:58:59 2026] GET /vendor/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.178053971Z [pid: 20|app: 0|req: 8986/17518] ::ffff:192.168.65.58 () {32 vars in 501 bytes} [Mon Nov 2 03:58:59 2026] GET /vendor/auth.json => generated 179 bytes in 1 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.178498304Z 2026-11-02 03:58:59,178 WARNING Not Found: /vendors/auth.json
linkding-1 | 2026-11-02T03:58:59.178812304Z 2026-11-02 03:58:59,178 WARNING Not Found: /vendors/auth.json
linkding-1 | 2026-11-02T03:58:59.178924721Z [pid: 19|app: 0|req: 8532/17519] ::ffff:192.168.65.58 () {32 vars in 498 bytes} [Mon Nov 2 03:58:59 2026] GET /vendors/auth.json => generated 179 bytes in 1 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.179229887Z [pid: 19|app: 0|req: 8532/17520] ::ffff:192.168.65.58 () {32 vars in 503 bytes} [Mon Nov 2 03:58:59 2026] GET /vendors/auth.json => generated 179 bytes in 1 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.179971137Z 2026-11-02 03:58:59,179 WARNING Not Found: /node_modules/auth.json
linkding-1 | 2026-11-02T03:58:59.180095554Z [pid: 20|app: 0|req: 8988/17521] ::ffff:192.168.65.58 () {32 vars in 457 bytes} [Mon Nov 2 03:58:59 2026] GET /node_modules/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.180098137Z 2026-11-02 03:58:59,179 WARNING Not Found: /node_modules/auth.json
linkding-1 | 2026-11-02T03:58:59.180314887Z [pid: 20|app: 0|req: 8988/17522] ::ffff:192.168.65.58 () {32 vars in 480 bytes} [Mon Nov 2 03:58:59 2026] GET /node_modules/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.181024971Z 2026-11-02 03:58:59,180 WARNING Not Found: /storage/auth.json
linkding-1 | 2026-11-02T03:58:59.181503304Z 2026-11-02 03:58:59,181 WARNING Not Found: /storage/auth.json
linkding-1 | 2026-11-02T03:58:59.181571346Z [pid: 20|app: 0|req: 8990/17523] ::ffff:192.168.65.58 () {32 vars in 470 bytes} [Mon Nov 2 03:58:59 2026] GET /storage/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.181702137Z [pid: 20|app: 0|req: 8990/17524] ::ffff:192.168.65.58 () {32 vars in 503 bytes} [Mon Nov 2 03:58:59 2026] GET /storage/auth.json => generated 179 bytes in 1 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.182296221Z 2026-11-02 03:58:59,182 WARNING Not Found: /database/auth.json
linkding-1 | 2026-11-02T03:58:59.182788721Z 2026-11-02 03:58:59,182 WARNING Not Found: /database/auth.json
linkding-1 | 2026-11-02T03:58:59.182916137Z [pid: 20|app: 0|req: 8992/17526] ::ffff:192.168.65.58 () {32 vars in 490 bytes} [Mon Nov 2 03:58:59 2026] GET /database/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.182935762Z [pid: 20|app: 0|req: 8992/17526] ::ffff:192.168.65.58 () {32 vars in 451 bytes} [Mon Nov 2 03:58:59 2026] GET /database/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.183522221Z 2026-11-02 03:58:59,183 WARNING Not Found: /db/auth.json
linkding-1 | 2026-11-02T03:58:59.183524429Z [pid: 19|app: 0|req: 8533/17527] ::ffff:192.168.65.58 () {32 vars in 479 bytes} [Mon Nov 2 03:58:59 2026] GET /db/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.184008596Z 2026-11-02 03:58:59,183 WARNING Not Found: /db/auth.json
linkding-1 | 2026-11-02T03:58:59.184484846Z [pid: 20|app: 0|req: 8994/17528] ::ffff:192.168.65.58 () {32 vars in 472 bytes} [Mon Nov 2 03:58:59 2026] GET /db/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.184551846Z 2026-11-02 03:58:59,184 WARNING Not Found: /auth/auth.json
linkding-1 | 2026-11-02T03:58:59.184627637Z [pid: 20|app: 0|req: 8994/17529] ::ffff:192.168.65.58 () {32 vars in 498 bytes} [Mon Nov 2 03:58:59 2026] GET /auth/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.185283637Z 2026-11-02 03:58:59,185 WARNING Not Found: /auth/auth.json
linkding-1 | 2026-11-02T03:58:59.185285679Z [pid: 19|app: 0|req: 8534/17530] ::ffff:192.168.65.58 () {32 vars in 441 bytes} [Mon Nov 2 03:58:59 2026] GET /auth/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.185752721Z 2026-11-02 03:58:59,185 WARNING Not Found: /authentication/auth.json
linkding-1 | 2026-11-02T03:58:59.186267554Z 2026-11-02 03:58:59,186 WARNING Not Found: /authentication/auth.json
linkding-1 | 2026-11-02T03:58:59.186337929Z [pid: 20|app: 0|req: 8995/17531] ::ffff:192.168.65.58 () {32 vars in 479 bytes} [Mon Nov 2 03:58:59 2026] GET /authentication/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.186410971Z [pid: 19|app: 0|req: 8535/17532] ::ffff:192.168.65.58 () {32 vars in 519 bytes} [Mon Nov 2 03:58:59 2026] GET /authentication/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.187284471Z 2026-11-02 03:58:59,186 WARNING Not Found: /oauth/auth.json
linkding-1 | 2026-11-02T03:58:59.187368804Z [pid: 19|app: 0|req: 8537/17533] ::ffff:192.168.65.58 () {32 vars in 484 bytes} [Mon Nov 2 03:58:59 2026] GET /oauth/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.187416804Z 2026-11-02 03:58:59,187 WARNING Not Found: /oauth/auth.json
linkding-1 | 2026-11-02T03:58:59.187513762Z [pid: 19|app: 0|req: 8537/17534] ::ffff:192.168.65.58 () {32 vars in 466 bytes} [Mon Nov 2 03:58:59 2026] GET /oauth/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.188132137Z 2026-11-02 03:58:59,188 WARNING Not Found: /keys/auth.json
linkding-1 | 2026-11-02T03:58:59.188599054Z [pid: 19|app: 0|req: 8539/17535] ::ffff:192.168.65.58 () {32 vars in 497 bytes} [Mon Nov 2 03:58:59 2026] GET /keys/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.188657929Z 2026-11-02 03:58:59,188 WARNING Not Found: /keys/auth.json
linkding-1 | 2026-11-02T03:58:59.188736762Z [pid: 19|app: 0|req: 8539/17536] ::ffff:192.168.65.58 () {32 vars in 462 bytes} [Mon Nov 2 03:58:59 2026] GET /keys/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.189224012Z 2026-11-02 03:58:59,189 WARNING Not Found: /credentials/auth.json
linkding-1 | 2026-11-02T03:58:59.189680679Z 2026-11-02 03:58:59,189 WARNING Not Found: /credentials/auth.json
linkding-1 | 2026-11-02T03:58:59.189832012Z [pid: 19|app: 0|req: 8541/17538] ::ffff:192.168.65.58 () {32 vars in 498 bytes} [Mon Nov 2 03:58:59 2026] GET /credentials/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.189848096Z [pid: 19|app: 0|req: 8541/17538] ::ffff:192.168.65.58 () {32 vars in 514 bytes} [Mon Nov 2 03:58:59 2026] GET /credentials/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.190509637Z 2026-11-02 03:58:59,190 WARNING Not Found: /creds/auth.json
linkding-1 | 2026-11-02T03:58:59.190573762Z [pid: 20|app: 0|req: 8996/17539] ::ffff:192.168.65.58 () {32 vars in 484 bytes} [Mon Nov 2 03:58:59 2026] GET /creds/auth.json => generated 179 bytes in 0 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 1)
linkding-1 | 2026-11-02T03:58:59.191355054Z 2026-11-02 03:58:59,191 WARNING Not Found: /creds/auth.json
linkding-1 | 2026-11-02T03:58:59.195411012Z [pid: 20|app: 0|req: 8997/17540] ::ffff:192.168.65.58 () {32 vars in 503 bytes} [Mon Nov 2 03:58:59 2026] GET /creds/auth.json => generated 179 bytes in 1 msecs (HTTP/1.1 404) 8 headers in 267 bytes (1 switches on core 0)
linkding-1 | 2026-11-02T03:58:59.839146429Z [pid: 19|app: 0|req: 8542/17541] ::1 () {28 vars in 300 bytes} [Mon Nov 2 03:58:59 2026] GET /health => generated 42 bytes in 1 msecs (HTTP/1.1 200) 8 headers in 251 bytes (1 switches on core 1)