Installing HedgeDoc on Fedora CoreOS Latest

HedgeDoc (formerly known as CodiMD) is an open-source collaborative document editor that allows multiple users to work on the same document in real-time. In this tutorial, we will go through the process of installing HedgeDoc on Fedora CoreOS Latest.

Prerequisites

Before you begin, make sure you have the following:

Step 1: Install Docker

HedgeDoc is built using Docker technology, so the first step is to install Docker on your system. To do this, run the following command:

sudo systemctl enable --now docker

This will install Docker and enable it to start during system bootup.

Step 2: Install Docker Compose

Docker Compose is a tool that allows you to define and run multi-container Docker applications. To install Docker Compose, run the following commands:

sudo curl \
    -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" \
    -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose

docker-compose --version

This will download and install Docker Compose on your system.

Step 3: Install HedgeDoc

Now that Docker Compose is installed, it's time to install HedgeDoc. We will use a pre-built Docker image for this. Run the following command to create a new folder for the HedgeDoc configuration files:

sudo mkdir -p /var/hedgedoc/data

Next, create a new file named docker-compose.yaml in that directory and add the following contents:

version: '3'

services:
  db:
    image: postgres:12-alpine
    environment:
      POSTGRES_USER: hedgedoc
      POSTGRES_PASSWORD: mysecretpassword
      POSTGRES_DB: hedgedoc
    volumes:
      - db:/var/lib/postgresql/data

  hedgedoc:
    image: hansd/hedgedoc:latest
    ports:
      - '3000:3000'
    environment:
      - DATABASE_URL=postgres://hedgedoc:mysecretpassword@db:5432/hedgedoc
      - NODE_ENV=production
      - URL=https://my.awesome.domain
      - SESSION_SECRET=mysessionsecret
      - ALLOW_ANONYMOUS_EDITS=true
      - MATOMO_URL=https://my.matomo.server.com
      - MATOMO_SITEID=1
      - MATOMO_TOKEN=12345
    volumes:
      - /var/hedgedoc/data:/hedgedoc/data

volumes:
  db:

Update the URL, SESSION_SECRET, MATOMO_URL, MATOMO_SITEID, and MATOMO_TOKEN values to match your requirements. These values will be used in the Docker container to configure HedgeDoc.

Now, run the following command to start the HedgeDoc containers:

sudo docker-compose -f /var/hedgedoc/data/docker-compose.yaml up -d

This will start the db and hedgedoc containers in the background.

Step 4: Access HedgeDoc

You should now be able to access HedgeDoc by visiting http://<your_server_ip>:3000 in your web browser. If you are running HedgeDoc on a local system or on a virtual machine, you can use http://localhost:3000 instead.

Conclusion

You have successfully installed HedgeDoc on Fedora CoreOS Latest using Docker Compose. You can now use it to collaborate with your team on documents in real-time.

If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!

Alternatively, for the best virtual desktop, try Shells!