Docker Image Deployment
The hoseiny/linkpeek image packages the Go server, static assets, and realtime hub in one container. Use this approach when you need a fast sandbox or when CI pipelines must spin up LinkPeek temporarily.
Pull the image
Section titled “Pull the image”docker pull hoseiny/linkpeek:latestTags follow semantic versions (v1.0.x) plus latest. Pin a version tag in production to avoid accidental upgrades.
Run the container
Section titled “Run the container”docker run \ --name linkpeek \ -p 9009:9009 \ -e LINKPEEK_ADMIN_PASSWORD="change-me" \ -e DATA_DIR=/data \ -v $(pwd)/linkpeek-data:/data \ hoseiny/linkpeek:latestImportant environment variables
Section titled “Important environment variables”| Variable | Purpose |
|---|---|
LINKPEEK_ADMIN_PASSWORD | Shared credential for the web UI and API. Rotate immediately after first login. |
DATA_DIR | Absolute path for payload uploads, capture transcripts, and PDF exports. |
REALTIME_ENABLED | Set to 0 to disable the WebSocket hub when debugging. |
CLOUDFLARED_ENABLED | Set to 1 if you plan to attach the Cloudflared sidecar manually. |
Rotate credentials
Never expose the container with the bootstrap admin password. Rotate it via the dashboard before sharing access with teammates.
Next steps
Section titled “Next steps”- Browse to
https://localhost:9009/and log in. - Rotate the admin password within the Access panel.
- Add the payload, capture, and retry labs to your bookmarks.
- Configure persistent backups for the mounted
DATA_DIRvolume.
For automated tests, wrap the container in docker compose or your CI orchestration and clean up with docker rm -f linkpeek after each suite.