Gotify

Gotify · a simple server for sending and receiving messages

FreeBSDで動かす(失敗)

FreeBSDのLinuxバイナリ互換機能で動かす

カーネルモジュールをロード

# kldload linux64

今後のために/boot/loader.confに以下を追記しておく

linux64_load="YES"

jailの中で

  • adduser
    • ユーザgotifyを作成

Release Version 2.0.15 ・ gotify/server

gotify-linux-amd64.zipをダウンロード

# su - gotify
$ mkdir gotify
$ cd gotify
$ curl -L https://github.com/gotify/server/releases/download/v2.0.15/gotify-linux-amd64.zip -O
$ unzip gotify-linux-amd64.zip
$ file gotify-linux-amd64
gotify-linux-amd64: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, Go BuildID=pJW1kkfNQ_JE7HT6yDmF/fY642X1xuFIZuDZyFetl/CTBgru_2-IRUXx7JrXNW/WdIac20jmKZBXEsSy1UY, BuildID[sha1]=4126704cdaec6ae0c6a9284d51ee8b8ec1d878af, stripped

おもむろに起動してみる

$ ./gotify-linux-amd64
ELF interpreter /lib64/ld-linux-x86-64.so.2 not found, error 2
Abort trap

emulators/linux_base-c7をインストール

# pkg install linux_base-c7

インストール中に以下のエラーが見えるが大丈夫か?

ELF binary type "0" not known.
/bin/sh: /compat/linux/usr/bin/gio-querymodules-32: 無効な実行形式です

設定ファイルのサンプルをダウンロード

$ curl -0 config.yml https://raw.githubusercontent.com/gotify/server/master/config.example.yml

一般ユーザで動かしたいので,ポート番号を1024以上に変えておく

nginx(リバースプロキシ)の設定

  • nginx config · Gotify
  • proxy_passだけ設定したらログインできなかった
    • おそらくproxy_set_header Host $http_host;のあたりが必要
  • 管理画面にBasic認証してみる(気休め)
    • rootには何もファイルが無い想定
      location = / {
          auth_basic_user_file /usr/local/www/.htpasswd;
          auth_basic 'hoge';
          try_files $uri @proxy;
      }
      
      location / {
          try_files $uri @proxy;
      }
      
      location @proxy {
          proxy_pass http://gotify;
          proxy_http_version 1.1;
          # 以下略
          # see https://gotify.net/docs/nginx
      }

参考