docker-compose で Traefik リバースプロキシ経由で Hauk をインストールする方法

Hauk はセルフホスト型のオープンソース位置共有サービス。このセットアップは Cloudflare ワイルドカード証明書を持つ Traefik リバースプロキシの後ろで Hauk を Docker で実行する。

まず設定ディレクトリを作成し、サンプル設定ファイルをダウンロード:

hauk_init.sh
mkdir -p config/hauk
curl -fsSL -o config/hauk/config.php https://raw.githubusercontent.com/bilde2910/Hauk/master/backend-php/include/config-sample.php

config/hauk/config.php を開き、サイトドメインとセキュアなハッシュパスワードを設定。memcached 設定はデフォルトのままにする——memcached は既に Docker イメージに含まれている。

次に docker-compose.yml ファイルを作成:

docker-compose.yml
services:
  hauk:
    image: bilde2910/hauk
    volumes:
      - ./config/hauk:/etc/hauk
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.hauk-mydomain.rule=Host(`hauk.mydomain.com`)"
      - "traefik.http.routers.hauk-mydomain.entrypoints=websecure"
      - "traefik.http.routers.hauk-mydomain.tls.certResolver=cloudflare-ec384"
      - "traefik.http.routers.hauk-mydomain.tls.domains[0].main=mydomain.com"
      - "traefik.http.routers.hauk-mydomain.tls.domains[0].sans=*.mydomain.com"
      - "traefik.http.services.hauk-mydomain.loadbalancer.server.port=80"

mydomain.com を実際のドメインに置き換える。別の Traefik 証明書リゾルバを使う場合は cloudflare-ec384 を適宜調整。

コンテナを起動:

start_hauk.sh
docker-compose up -d

スタックを自動起動する systemd サービスについては Create a systemd service for your docker-compose project in 10 seconds を参照。

実行後、Hauk Android アプリまたはブラウザで https://hauk.mydomain.com を開いて位置共有を開始。


同じカテゴリの類似記事をチェック: Docker