Inhaltsverzeichnis

ODK Central Server bei Hetzner

Diese Anleitung ist WIP!

Anleitung:\ Installing Central on DigitalOcean

SSH-Schlüssel erzeugen

Server bestellen

DNS anlegen

odk              IN A {IPV4}
odk              IN AAAA {IPv6}
central.odk      IN CNAME odk

Docker installieren

Siehe: Install Docker Engine on Ubuntu

  root@...# for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
  # Add Docker's official GPG key:
  root@...# apt-get update
  root@...# apt-get install ca-certificates curl gnupg
  root@...# install -m 0755 -d /etc/apt/keyrings
  root@...# curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
  root@...# chmod a+r /etc/apt/keyrings/docker.gpg
  # Add the repository to Apt sources:
  root@...# echo \
    "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
    "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
    sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  root@...# apt-get update
  root@...# apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  root@...# docker run hello-world
  root@...# docker --version && docker compose version
  $ sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Firewall überprüfen

  root@...# ufw status verbose
  root@...# ufw disable

Install ODK Central and configure it

  cd /srv
  git clone https://github.com/getodk/central
  cd central
  git submodule update -i
  cp .env.template .env
  vim .env
  touch ./files/allow-postgres14-upgrade
  docker compose build

Configure Hetzner Email Server

Hetzner email accounts documentation: Email-Konto einrichten

# Optional: configure a custom mail server
EMAIL_FROM=noreply@diggin-data.de
EMAIL_HOST=mail.your-server.de
EMAIL_PORT=143
EMAIL_SECURE=false
EMAIL_IGNORE_TLS=true
EMAIL_USER=KONTONAME@diggin-data.de
EMAIL_PASSWORD=KONTOPASSWORD
  root@...# docker compose build service && docker compose stop service && docker compose up -d service

Starting up Central

  docker compose up -d
  $ docker compose ps

Create an Admin User account

  root@...# docker compose exec service odk-cmd --email YOUREMAIL@ADDRESSHERE.com user-create
  root@...# docker compose exec service odk-cmd --email YOUREMAIL@ADDRESSHERE.com user-promote
  root@...# docker compose exec service odk-cmd --email YOUREMAIL@ADDRESSHERE.com user-set-password