またもNextcloudが動かん
いつの間にかNextcloudがVer22になっているのだが、今度はMariaDBをいっしょにアップデートしたせいで動かなくなってしまった。
mariadbを5.6に固定するか、起動オプションに--innodb_read_only_compressed=OFF
を付ければよいらしい。
docker-compose.ymlのcommand:
にこれを追加したら無事アップデートできました。
いつの間にかNextcloudがVer22になっているのだが、今度はMariaDBをいっしょにアップデートしたせいで動かなくなってしまった。
mariadbを5.6に固定するか、起動オプションに--innodb_read_only_compressed=OFF
を付ければよいらしい。
docker-compose.ymlのcommand:
にこれを追加したら無事アップデートできました。
Nextcloudのdockerイメージをなにげなくアップデート(ver.21)したら、内部エラーとか言われて動かなくなってしまった……
occでぺちぺち叩いてると毎回「Error: Undefined class constant ‘MAJOR_VERSION’ in …」と怒られるので、これでググったらForumに同じ問題が載っていた。
files_external_gdriveとfiles_external_dropboxがアウトだったくさいのでconfig/config.phpの’app_install_overwrite’ => array(… からこの2つを取り除いて、/custom_appsからも削除。
で、無事動きましたとさ。
IFTTTがすっかり残念なことになってしまったので、オープンソース版IFTTTって感じのn8n.ioを自宅に立ててみた。dockerイメージが用意されてるので立ち上げまでは簡単。
で、早速LINE通知などしてみようと弄ってみるも、OAuth2認証に失敗する。
ヘルプが存在することに気づかずLINE Messaging APIだとかごにょごにょしてたが(LINE Notifyが正解だった)、ヘルプ通りにやってみたらうまく……いかない。
#SafariとChromeの挙動もなんか違う感じ……
どうもCallback URLへのアクセスに失敗してるみたいで、nginxのログを見ると404を返している……n8nの画面で表示される/webhookrest/oauth2-credential/callbackが存在していない???
アクセスログを追うとどうやら/webhookrestではなく/restが正解なのでは?という気がしてきたので、nginxでURLを書き換えてみたら認証成功。
rewrite /webhookrest(.*) /rest$1 permanent;
どうもこれバグなんじゃねーのという気がしてならないが、オレがなにか間違っているだけなのかもしれんのでしばらく静観……
とりあえず天気予報のLINE通知に成功したので、やりたいことを考えよう……
iOSクライアントとか無さげなのでスマホ連携は厳しいかなー(iOSショートカットを組み合わせればなにかできるかな)
Nature Remoが赤点滅から復帰しなくなってしまって、修理に出したら新品になって返ってきた。ありがてえ。
ということでIoT熱が再燃したので、またダッシュボードでも作るかということでPrometheusとやらに手を出してみたのです。以前はGoogle Spreadsheetとか使ってたんだけど、PrometheusとGrafanaの組み合わせが流行りっぽい。
いつも通りDockerで起動するだけで終わり。やり方はググればいくらでも出てくるので割愛。
Nature RemoのExporterはこちらから。ありがてえ。
Nature Remoのダッシュボードはこんな感じ。
ただDocker監視しようと入れたcAdvisorでハマり。
Failed to start container manager: inotify_add_watch /sys/fs/cgroup/blkio: no space left on device
みたいなエラーが出てコンテナが起動しない。
ググる力を発揮してみたところ、カーネルパラメタfs.inotify.max_user_watchesを増やしてみましょうとのことだったので、sysctl fs.inotify.max_user_watches=524288 && sysctl -pしてみたら解決した次第。
Grafana、簡単にいろいろ視覚化できて楽しい。なにかグラフにするネタないかなー。
Alfred v4でまたSend URLワークフローが動かなくなっていた。
このワークフローが古いキャッシュディレクトリを見てるせいらしいのだが、バージョンアップのたびにシンボリックリンクを張り直すのが面倒なので、スクリプトの中見て、ディレクトリを全部書き換えてしまった。
具体的には、ワークフローに含まれてるスクリプトに書かれてる”com.runningwithcrayons.Alfred-2″を”com.runningwithcrayons.Alfred”に全部書き直す。
書き換えたファイルは以下。
もちろんリンク張り直しでもいいと思われ。
cd ~/Library/Caches/ ln -snf com.runningwithcrayons.Alfred com.runningwithcrayons.Alfred-2
パスワード管理ツールはずっとKeepassを使ってたんだけど、Bitwardenてのに乗り換えてみた。
Keepassが悪いわけじゃないんだけど、MacアプリのKeepassXCのGUIが最近ダメな感じなのと、iOSアプリの使い勝手がよろしくない、ついでにブラウザ拡張も今ひとつ……だけどオープンソースだし、DropboxにDB置いておけば同期もラクだったので使い続けてたんだけども。
Bitwardenはオープンソースで、DB置くクラウドは選べないけどなんとなく安心。
OS対応もほぼ完璧で、iOSだとパスワードの自動入力にもちゃんと対応。
有効にはしてないけど、2FAとかYubiKeyとかも使える。
クラウド運用費用はどこから出てるんだろうとか思わなくもないので、存続し続けられるのか若干の不安はあるけども、いざとなったらDocker使って自前で立てることもできるようなのでなんとかなるでしょー……
ということで、Keepassのデータ取り込んで、しばらく使ってみよーと思っております。
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
いじょ。
日本語索引が超便利!(吉川晃司がよしかわだと思われて「や」に入っちゃったりするけど)