OSSなミュージックストリーミングサーバー、koelの導入と躓いたところ
最近、VPSをKagoyaからVultrにお引越ししました。
そのついでに、ミュージックストリーミングサーバーも変更しようと思いました。
色々調べた結果koelというOSSのミュージックストリーミングサーバーが非常に魅力的だったので、こちらに乗り換えた話と、その際に躓いた点を書きます。
今までのミュージックストリーミングサーバーとの比較
僕は、今までMadSonicを使用していました。
こちらは、以下のようなデメリットがありました。
- PCでしか聞けない(スマホ等で聞くには別途月額有償)
- サーバー側のメモリを喰う
- UIが使いにくい(あくまで主観です)
特に毎月1ドル払わないとPC(ブラウザ)でしか聞けない点がネックでした。
そこで見つけたのがkoelでした。
koelは以下のような特徴がありました。
この他に、Amazon S3との連携でストレージ容量の少ないVPSでも使用できたり、Youtube、Last.fmとの連携も魅力的でした。
導入の注意点
koelの導入に関しては、公式でDocumentが用意されており、本来はこちらを参考に進めれば概ね問題はありません。
が、… 2017/10月現在、Documentの更新が十分にされていないのか、この通りに進めると途中でエラーを吐いてしまいます。
僕はこのエラーに3日間くらい悩まされました…(JSわかんない)
エラーはphp artisan koel:init
を実行した際に起きます。
内容は以下の通りです。
$ cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules 95% emitting ERROR Failed to compile with 49 errors15:02:38 These dependencies were not found in node_modules: ... Did you forget to run npm install --save for them? Asset Size Chunks Chunk Names img/icon.png 10.8 kB [emitted] fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713 166 kB [emitted] fonts/fontawesome-webfont.ttf?b06871f281fee6b241d60582ae9369b9 166 kB [emitted] fonts/fontawesome-webfont.woff2?af7ae505a9eed503f8b8e6982036873e 77.2 kB [emitted] fonts/fontawesome-webfont.woff?fee66e712a8a08eef5805a46892932ad 98 kB [emitted] /js/app.c0fba38fc81df5c9aa4d.js 619 kB 0 [emitted] [big] /js/app mix-manifest.json 53 bytes [emitted] img/favicon.ico 4.29 kB [emitted] img/artists/.gitkeep 0 bytes [emitted] img/covers/unknown-album.png 11.5 kB [emitted] img/bars.gif 33.2 kB [emitted] fonts/fontawesome-webfont.svg?912ec66d7572ff821749319396470bde 444 kB [emitted] [big] img/tile-wide.png 3.25 kB [emitted] img/itunes.svg 1.54 kB [emitted] img/logo.svg 5.19 kB [emitted] img/logo.png 9.28 kB [emitted] img/tile.png 6.47 kB [emitted] fonts/fontawesome-webfont.eot 166 kB [emitted] fonts/fontawesome-webfont.woff 98 kB [emitted] fonts/fontawesome-webfont.ttf 166 kB [emitted] fonts/fontawesome-webfont.woff2 77.2 kB [emitted] fonts/fontawesome-webfont.svg 444 kB [emitted] [big] fonts/FontAwesome.otf 135 kB [emitted] error Command failed with exit code 2. info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command. error Command failed with exit code 1. info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
エラーメッセージを信じて、npm install --save
を実行してもうまくいきません。
解決方法を言ってしまうと、yarnのバージョンを下げることで解決します。
公式Documentに
NodeJS latest stable with yarn
と書いてあるのを信じてしまうとこの罠にハマります。
現在Issueとして上がっているので後々解決はされると思います。
肝心のバージョンをいくつにすればよいかですが、上のIssueにもある通り、
npm install yarn@0.25.4 -g
でインストールすれば良さそうなので、<=0.25.4であれば良さそうです。
今の最新バージョンは、1.2.1なので、だいぶ違いますね…
これで解決しない場合は、別件なので、Issueを見て頂くか、公式Documentをまた詳しく読み直してみて下さい…!(.envとかきちんと設定するのを忘れずに!)
Issueでエラーメッセージを検索すると色々解決の糸口が見えてくるというのが今回の経験で得た知見でした。