はじめに
自宅サーバーでいろいろセルフホストしていてよかったものなどをまとめようとおもったのでまとめてみました。今回はDozzleについて解説します。
Dozzleとは
リアルタイムDockerのログ、統計データを見るためのものです。主に以下のような機能があります
- リアルタイムログ
- CPU、メモリ使用量確認
Dozzleの使い方
※Docker、Docker Composeをインストールしていることを前提としています
公式ドキュメントにある以下のコードをcompose.ymlに入力しdocker compose up -dと実行すれば起動します。起動が終わったらhttp://localhost:9999にアクセスします。
services:
dozzle:
image: amir20/dozzle:latest
container_name: dozzle
environment:
- DOZZLE_AUTH_PROVIDER=simple
- DOZZLE_ENABLE_ACTIONS=true
- TZ=Asia/Tokyo
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./users.yml:/data/users.yml
ports:
- "9999:8080"
restart: unless-stopped
なぜわざわざDozzleを使うのか
1つ目はDockerサービスの多くはDBとサービスを分離させており大きなものになると1つのもので6つのコンテナを使うこともあります。そのためこのようなサービスを入れておくことにより1手間減るということです。
2つ目はユーザーごとで制限できることです。友達を招待する場合、ターミナルのアクセス権限を渡す必要がありますが見られて欲しくないものが多く困ってしまったことがないでしょうか?そんなときにこのサービスを入れることによってそんな問題を簡単に解決できます。
複数のアカウント作成方法
まずDozzleと同じ階層でusers.ymlを作成してください。
users:
名前:
password: "暗号化されたパスワード"
# ハイフンなしの文字列にする
roles: admin
名前:
password: "$パスワード"
# ハイフンなしの文字列にする
roles: editor
filter: "name=/(サービス名|サービス名)"
暗号化したパスワード出し方
sudo apt update && sudo apt install -y whois
# bcryptでハッシュ化する(パスワードの入力を求められます)
mkpasswd -m bcrypt
感想
最初はあまり効果はないと思っていましたが実際に使ってみるととても効果があったためこれからも使っていきたいです。