Installation
linkding is designed to be run with container solutions like Docker. The Docker image is compatible with ARM platforms, so it can be run on a Raspberry Pi.
linkding uses an SQLite database by default. Alternatively, linkding supports PostgreSQL, see the database options for more information.
Using Docker
The Docker image comes in several variants. To use a different image than the default, replace latest
with the desired tag in the commands below, or in the docker-compose file.
Tag | Description |
---|---|
latest |
Provides the basic functionality of linkding |
latest-plus |
Includes feature for archiving websites as HTML snapshots
|
latest-alpine |
latest , but based on Alpine Linux. 🧪 Experimental |
latest-plus-alpine |
latest-plus , but based on Alpine Linux. 🧪 Experimental |
To install linkding using Docker you can just run the image from Docker Hub:
In the command above, replace the {host-data-folder}
placeholder with an absolute path to a folder on your host system where you want to store the linkding database.
If everything completed successfully, the application should now be running and can be accessed at http://localhost:9090.
To upgrade the installation to a new version, remove the existing container, pull the latest version of the linkding Docker image, and then start a new container using the same command that you used above. There is a shell script available to automate these steps. The script can be configured using environment variables, or you can just modify it.
To complete the setup, you still have to create an initial user, so that you can access your installation.
Using Docker Compose
To install linkding using Docker Compose, you can download the docker-compose.yml
file. Also download the .env.sample
file, rename it to .env
, configure the parameters, and then run:
To complete the setup, you still have to create an initial user, so that you can access your installation.
User Setup
The linkding Docker image does not provide an initial user, so you have to create one after setting up an installation. To do so, replace the credentials in the following command and run it:
Docker
Docker Compose
The command will prompt you for a secure password. After the command has completed you can start using the application by logging into the UI with your credentials.
Alternatively, you can automatically create an initial superuser on startup using the LD_SUPERUSER_NAME
option.
Reverse Proxy Setup
When using a reverse proxy, such as Nginx or Apache, you may need to configure your proxy to correctly forward the Host
header to linkding, otherwise certain requests, such as login, might fail.
Apache
Apache2 does not change the headers by default, and should not need additional configuration.
An example virtual host that proxies to linkding might look like:
For a full example, see the docker-compose configuration in jhauris/apache2-reverse-proxy
If you still run into CSRF issues, please check out the LD_CSRF_TRUSTED_ORIGINS
option.
Caddy 2
Caddy does not change the headers by default, and should not need any further configuration.
If you still run into CSRF issues, please check out the LD_CSRF_TRUSTED_ORIGINS
option.
Nginx
Nginx by default rewrites the Host
header to whatever URL is used in the proxy_pass
directive.
To forward the correct headers to linkding, add the following directives to the location block of your Nginx config:
Instead of configuring header forwarding in your proxy, you can also configure the URL from which you want to access your linkding instance with the LD_CSRF_TRUSTED_ORIGINS
option.