Meshtastic <=> Matrix Relayは、Meshtasticデバイスとマトリックスチャットルームの間の強力で使いやすいリレーであり、プラットフォーム間のシームレスな通信を可能にします。
このプロジェクトは単にそれをDockerizeするだけです
AMD64とARM64の2つのフレーバーがあります
コンテナを非ルートユーザー、つまりmmrelayとして実行し、config.yamlを/optまたは/srvなどに配置することをお勧めします。新しいユーザーが所有していることを確認してください
sample_config.yamlのローカルコピーを取得し、命令とユースケースに従って変更し、 config.yamlに名前を変更し、 /home/mmrelayマウントのコンテナに提供する
すなわち
wget -O /opt/config.yaml https://raw.githubusercontent.com/geoffwhittington/meshtastic-matrix-relay/main/sample_config.yaml
vim /opt/config.yaml
useradd -M -s /bin/false mmrelay && chown mmrelay:mmrelay /opt/config.yaml
docker-compose.ymlにサービスを追加します:
mmrelay-docker:
container_name: mmrelay
user: mmrelay:mmrelay
read_only: true
cap_drop:
- ALL
volumes:
- /opt/config.yaml:/home/mmrelay/config.yaml
image: ghcr.io/lingawakad/mmrelay-docker:latest
SystemDを使用してコンテナを管理する場合は、これらのラインに沿った何かが正常に機能するはずです。
/etc/systemd/system/mmrelay.service
[Unit]
Description=M<=>M Relay - Dockerized
Requires=docker.service
After=docker.service
[Service]
TimeoutStartSec=0
Restart=always
RestartSec=30
ExecStartPre=-/usr/bin/docker stop %n
ExecStartPre=-/usr/bin/docker rm %n
ExecStartPre=/usr/bin/docker pull ghcr.io/lingawakad/mmrelay-docker:latest
ExecStart=/usr/bin/docker run
--rm
--name=%n
--log-driver=none
--user=mmrelay:mmrelay
--read-only
--cap-drop=ALL
-v /opt/config.yaml:/home/mmrelay/config.yaml
ghcr.io/lingawakad/mmrelay-docker:latest
SyslogIdentifier=mmrelay
[Install]
WantedBy=multi-user.target
((この例では、 systemctl status mmrelayが機能し、ロギングはJournalD、つまりjournalctl -fu mmrelay使用していることに注意してください)))))))