UGREEN NAS DXP4800GT買った(3)munin-nodeをDocerで(debian)2
テストでDXP4800GTにMunin-nodeをインストールしたが、どうも他の人がつくったイメージは不安がある・・・・・。自分でメンテできるのかという問題はあるが、Dockerの勉強も兼ねて。
前回はMunin-nodeにdennistt/munin-nodeを使ったが、1年前のイメージだったりです。他のイメージに至っては7年とかそれ以上前ちゃんと管理されているのか心配なので、今回はDebianの下地にインストールして使う方法を検討。
ただ、UGOSのDockerからはインストールできなさそうなので、SSHで接続してインストールする。
SSHが標準ではONになっていたいのでONに変更。SSH開けたままにしていると危ないから自動でOFFになるとこのこと。なるほど
それでは作業を始める
Dockerの準備
「UGOS」のDocker上で、Debian stable-slimをインストール、Dockerで「debian」を検索ダウンロードを選択するとバージョン番号を選択できるので stable-slimを選択しインストール。
NAS上の適当な場所に取りあえず、ディレクトリを切る。例 /volume1/docker/munin-node/
Dockerfile と docker-compose.yml を作成します。
Dockerfile は
FROM debian:stable-slim
RUN apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
munin-node munin-plugins-core munin-plugins-extra \
procps iproute2 net-tools \
&& rm -rf /var/lib/apt/lists/* \
&& mkdir -p /run/munin /var/log/munin /var/lib/munin-node/plugin-state
# 不要プラグイン(irqstatsの警告対策)
RUN rm -f /etc/munin/plugins/irqstats /etc/munin/plugins/interrupts
# 設定: フォアグラウンド動作、ログは標準出力、接続許可RUN sed -i 's/^background .*/background 0/' /etc/munin/munin-node.conf \&& sed -i 's/^setsid .*/setsid 0/' /etc/munin/munin-node.conf \&& sed -i 's#^log_file .*#log_file /dev/stdout#' /etc/munin/munin-node.conf \&& sed -i 's/^host .*/host 0.0.0.0/' /etc/munin/munin-node.conf \&& printf '%s\n' \'host_name nas-ugos' \'cidr_allow 192.168.0.0/24' \>> /etc/munin/munin-node.confEXPOSE 4949
CMD ["munin-node"]
192.168.0.0のネットワークからアクセス可能にしてipV4だけで、ipV6を無効化しています。
docker-compose.yml は
services:
munin-node:
build: .
container_name: munin-node
network_mode: host
pid: host
restart: unless-stopped
volumes:
- /proc:/host/proc:ro
- /sys:/host/sys:ro
- /etc/localtime:/etc/localtime:ro
- /volume1:/volume1:ro
です。
準備ができたら
以下で実行
cd /volume1/docker/munin-nodedocker compose build --pull --no-cachedocker compose up -ddocker logs --tail 20 munin-node
Muninのサーバーから接続はいつもの
コメント
コメントを投稿