hedgedoc/docs/content/tutorials/setup.md
Philip Molares 5ed1fa18d6 fix: fix links to other files
Signed-off-by: Philip Molares <philip.molares@udo.edu>
2023-09-17 21:50:21 +02:00

3.2 KiB

Setup

After completing this tutorial you'll have your own HedgeDoc instance running. We will use Docker to accomplish this.

  1. Open the terminal of the machine you want to install HedgeDoc on.

  2. Check if you have Docker installed by running docker --version. The response should contain some version number greater than 20.10.13.

  3. Create a new directory for your HedgeDoc instance: mkdir -p /opt/hedgedoc.

  4. Change into the directory with cd /opt/hedgedoc.

  5. Download these files:

    • curl -o .env https://docs.hedgedoc.dev/files/setup-docker/config.env
    • curl -o Caddyfile https://docs.hedgedoc.dev/files/setup-docker/Caddyfile
    • curl -o docker-compose.yml https://docs.hedgedoc.dev/files/setup-docker/docker-compose.yml
  6. Open the file .env in the editor of your choice (for example with nano) and edit the following variables:

    • HD_BASE_URL: This should contain the full url you intend to run HedgeDoc on (e.g. for the demo this would be https://demo.hedgedoc.org). If you just want to run HedgeDoc on your local machine for now https://hedgedoc.localhost should be sufficient for testing.
    • HD_SESSION_SECRET: This should contain a long and random secret for your login sessions. You can generate it with pwgen -s 64 or any other way you see fit.
    • HD_DATABASE_PASS: This should contain a strong password than password for your database. You can again use pwgen -s 64 to generate it.
  7. Start the Docker containers by running docker compose up -d.

  8. Navigate your browser to the url you chose in step 6. Your instance is now ready to use.

You can now play around with your HedgeDoc instance and read about next steps as either a new user or an admin.

Next Steps

For Users

For admins

Troubleshooting

Port already used

Error response from daemon: driver failed programming external connectivity: Bind for 0.0.0.0:80
failed: port is already allocated.

If you see this error, it means there is already something running on your machine that uses port 80 or 443. The easiest fix for this is to stop the other application. If you want to run multiple applications on that port on your server you may want to read our guide about reverse proxying.