2018-08-25

JpsonicをDockerで動かす

Airsonicの日本語対応版JpsonicをDockerで動かしてみた。といってもDockerfileが用意されているので簡単。

ディレクトリ作る。

mkdir jpsonic
cd jpsonic
mkdir -p install/target/dependency

リポジトリからファイルを取ってくる。

./docker-compose.ymlを作る。volumesは適当に変更。

web:
  build: "./install"
  restart: always
  ports:
    - 4040:4040
  volumes:
    - ./music:/jpsonic/music
    - ./playlists:/jpsonic/playlists
    - ./podcasts:/jpsonic/podcasts
    - ./data:/jpsonic/data
  environment:
    - JAVA_OPTS="-Xmx512m"

Dockerfileに合わせてjpsonic.warをリネーム。Dockerfile書き換えてもいいけど。

cd install/target/dependency
mv jpsonic.war jpsonic-main.war
cd -

ビルドして起動。

docker-compose build
docker-compose up -d

いじょ。
日本語索引が超便利!(吉川晃司がよしかわだと思われて「や」に入っちゃったりするけど)

2018-07-28

ローカルLANのドメイン名変更

「.localはmDNSで使ってるからローカルLANで使うべきではない」というのを社内掲示板で見かけて、ふーんそういうもんかと……
うち思い切り使ってて、ときどきMacがらみの名前解決がおかしい気がするのはこのせいか?

ということで、とりあえず.homeに変更しようと思い立つ。これもTLDの衝突可能性があるからよくはないみたいなんだけど、いまのところ.homeの払い出しは凍結されているようなのでよしとしましょう。
マイクロソフトの推奨は自前ドメインのサブドメインにすることみたいなんだけど、なんとなく面倒かなあ……
(自前ドメイン持ってない大多数の人はどうすんだろ)

以下、たった今変更したときのメモ。サーバの環境はUbuntu 18.04。

ローカルDNS(BIND)の設定変更

  1. # rndc -k /etc/bind/rndc.key freeze
  2. /etc/bind/named.conf.localのzoneを修正
  3. /var/lib/bind/db.hoge.localをコピって新しいドメイン用のファイルを作成。DDNSで追加されたホスト名は削る。
  4. /var/lib/bind/db.x.168.192の旧ドメイン名を変更。DDNSで追加されたホスト名は削る。
  5. # rndc -k /etc/bind/rndc.key thaw
  6. # service bind9 restart  (不要かも)

DHCPの変更

  1. /etc/dhcp/dhcpd.conf内の旧ドメイン名を変更。optionsとDDNS用の設定あたり。
  2. # service isc-dhcp-server restart

Linuxサーバ自身の変更

  1. /etc/hostsを修正
  2. /etc/netplan/50-cloud-init.yamlを修正、修正後 # netplan apply
  3. /etc/systemd/resolved.confを修正、修正後 # systemctl restart systemd-resolved

面倒なのでいろいろ修正した後はサーバ再起動しちゃえ。あとDHCPクライアントも。

2018-06-23

Chinachu立て直し

Ubuntu 18.04で新しくサーバ立てたので、テレビ録画環境を移行。

Chinachuはドキュメント通りに入れていけばOKなのだが、微妙にハマったのがdvbのパーミッション。
今回は、PT3をLinuxカーネルに含まれてるdvbドライバで動かしてるんだけど、rootでしかアクセスできなくて録画プログラムが動かない。

で、こんな感じでudevのファイル書いてみた。

$ cat /etc/udev/rules.d/99-dvb.rules
KERNEL==”dvb*” GROUP=”video”, MODE=”0666″
KERNEL==”dvb0.dvr0″ GROUP=”video”, MODE=”0666″
KERNEL==”dvb1.dvr0″ GROUP=”video”, MODE=”0666″
KERNEL==”dvb2.dvr0″ GROUP=”video”, MODE=”0666″
KERNEL==”dvb3.dvr0″ GROUP=”video”, MODE=”0666″
KERNEL==”dvb0.demux0″ GROUP=”video”, MODE=”0666″
KERNEL==”dvb1.demux0″ GROUP=”video”, MODE=”0666″
KERNEL==”dvb2.demux0″ GROUP=”video”, MODE=”0666″
KERNEL==”dvb3.demux0″ GROUP=”video”, MODE=”0666″
KERNEL==”dvb0.frontend0″ GROUP=”video”, MODE=”0666″
KERNEL==”dvb1.frontend0″ GROUP=”video”, MODE=”0666″
KERNEL==”dvb2.frontend0″ GROUP=”video”, MODE=”0666″
KERNEL==”dvb3.frontend0″ GROUP=”video”, MODE=”0666″
……もっとちゃんとした書き方ある気がするけど、動いたからまあいいか。
あ、修正したら再起動しないと反映されなかった。udevのサービス再起動ではなぜかダメ。

他にもsystemdになったので、スタートアップのやり方が変わっていたりする。
全部動いてる状態で、

pm2 save
pm2 startup

とすればOK。

2018-06-16

DDNSのエントリ削除

たまにおかしくなるので対処メモ。

DHCPのログにこんなのが出る時がある。

dhcpd: Forward map from XboxOne.hoge.local to 192.168.8.236 FAILED: Has an address record but no DHCID, not mine.

以下でDDNSのエントリを消す。

nsupdate -k /etc/bind/rndc.key
> update delete XboxOne.hoge.local
> send

WindowsだったらDHCP振り直す。

ipconfig /renew
ipconfig /flushdns

いじょ。

2018-01-07

Chinachuアップデート

Chinachuアップデート方法のメモ。

Chinachu

$ ./chinachu updater

Mirakurun

(ここからの転記)

$ sudo npm install mirakurun@latest -g –unsafe –production

2017-12-17

AirsonicのDocker imageをアップデート

Dockerのイメージアップデートの仕方を知らなかったので、メモっておく。

$ cd airsonic
$ docker-compose stop
$ docker-compose pull
$ docker-compose up -d

docker-compose使ってるんでちょっと邪道なのかもしれんが。
ついでに、docker-compose.ymlも。

web:
 image: airsonic/airsonic
 restart: always
 ports:
 - 4040:4040
 volumes:
 - ./music:/airsonic/music
 - ./playlists:/airsonic/playlists
 - ./podcasts:/airsonic/podcasts
 - ./data:/airsonic/data
 environment:
 - JAVA_OPTS="-Xmx512m"

2017-11-12

Send URLワークフロー

今開いているページのURLを別アプリに送れる、SendURLってAlfredワークフローがいつの間にか使えなくなっていたんだけど、解決方法が見つかったのでメモ。

Alfred v2のキャッシュディレクトリにシンボリックリンクを張ればいいらしい。

cd ~/Library/Caches/
ln -snf com.runningwithcrayons.Alfred-3 com.runningwithcrayons.Alfred-2

解決した!