jail(iocage)で、録画サーバその4
ffmpeg導入済みのjailに、EPGStationを導入メモ。ひとまず設定の手前まで。
nodeとnpm
root@recorder:~ # pkg install node12 npm-node12
環境チェック
EPGStation/linux-setup.md at master · l3tnun/EPGStation · GitHub
にある通りにやってみる。
root@recorder:~ # node --version v12.18.4 root@recorder:~ # ffmpeg -version ffmpeg version 4.3.1 Copyright (c) 2000-2020 the FFmpeg developers built with FreeBSD clang version 8.0.1 (tags/RELEASE_801/final 366581) (based on LLVM 8.0.1) configuration: --prefix=/usr/local --mandir=/usr/local/man --datadir=/usr/local/share/ffmpeg --pkgconfigdir=/usr/local/libdata/pkgconfig --enable-shared --enable-pic --enable-gpl --enable-avresample --cc=cc --cxx=c++ --disable-alsa --disable-libopencore-amrnb --disable-libopencore-amrwb --enable-libaom --disable-libaribb24 --enable-asm --enable-libass --disable-libbs2b --disable-libcaca --disable-libcdio --disable-libcelt --disable-libcodec2 --enable-libdav1d --disable-libdavs2 --disable-libdc1394 --disable-debug --enable-htmlpages --enable-libdrm --disable-libfdk-aac --disable-libflite --enable-fontconfig --enable-libfreetype --enable-frei0r --disable-libfribidi --disable-gcrypt --disable-libglslang --disable-libgme --enable-gmp --enable-gnutls --enable-version3 --disable-libgsm --enable-iconv --disable-libilbc --disable-libjack --disable-libklvanc --disable-libkvazaar --disable-ladspa --disable-libmp3lame --disable-liblensfun --disable-libbluray --disable-librsvg --disable-librtmp --enable-libxml2 --disable-lto --disable-lv2 --disable-mbedtls --disable-libmfx --disable-libmodplug --disable-libmysofa --disable-nonfree --disable-openal --disable-opencl --enable-libopencv --disable-opengl --disable-libopenh264 --disable-libopenjpeg --disable-libopenmpt --disable-openssl --enable-optimizations --enable-libopus --disable-pocketsphinx --disable-libpulse --disable-librabbitmq --disable-librav1e --enable-runtime-cpudetect --disable-librubberband --disable-sdl2 --disable-libsmbclient --disable-libsnappy --disable-sndio --disable-libsoxr --disable-libspeex --disable-libsrt --disable-libssh --disable-libtensorflow --disable-libtesseract --enable-libtheora --disable-libtwolame --enable-libv4l2 --enable-vaapi --disable-vapoursynth --enable-vdpau --disable-libvidstab --disable-libvmaf --enable-libvorbis --disable-libvo-amrwbenc --enable-libvpx --disable-vulkan --disable-libwavpack --disable-libwebp --enable-libx264 --enable-libx265 --disable-libxavs2 --enable-libxcb --enable-libxvid --disable-outdev=xv --disable-libzimg --disable-libzmq --disable-libzvbi libavutil 56. 51.100 / 56. 51.100 libavcodec 58. 91.100 / 58. 91.100 libavformat 58. 45.100 / 58. 45.100 libavdevice 58. 10.100 / 58. 10.100 libavfilter 7. 85.100 / 7. 85.100 libavresample 4. 0. 0 / 4. 0. 0 libswscale 5. 7.100 / 5. 7.100 libswresample 3. 7.100 / 3. 7.100 libpostproc 55. 7.100 / 55. 7.100 root@recorder:~ # python --version python: Command not found. root@recorder:~ # python3.7 --version Python 3.7.9 root@recorder:~ # gcc --version gcc: Command not found. root@recorder:~ # cc --version FreeBSD clang version 8.0.1 (tags/RELEASE_801/final 366581) (based on LLVM 8.0.1) Target: x86_64-unknown-freebsd12.1 Thread model: posix InstalledDir: /usr/bin
EPGStation
1度しか使わないgitをjailの中に入れるの面倒なので、ホスト側で取っておく。
# cd /iocage/jails/recorder/root/root/ # git clone https://github.com/l3tnun/EPGStation.git
jail内に戻って続き。
root@recorder:~ # cd EPGStation/ root@recorder:~/EPGStation # npm install --no-save ... npm ERR! code EBADPLATFORM npm ERR! notsup Unsupported platform for mirakurun@3.3.1: wanted {"os":"linux,darwin,win32","arch":"any"} (current: {"os":"freebsd","arch":"x64"}) npm ERR! notsup Valid OS: linux,darwin,win32 npm ERR! notsup Valid Arch: any npm ERR! notsup Actual OS: freebsd npm ERR! notsup Actual Arch: x64
mirakurunを導入した時と同じエラーだな。。
ぐぐったら force オプションがそれっぽいので、無理やり導入。
root@recorder:~/EPGStation # npm install mirakurun --no-save --force ... + mirakurun@3.3.1 added 106 packages from 41 contributors, updated 1 package and audited 1193 packages in 15.858s found 2 low severity vulnerabilities run `npm audit fix` to fix them, or `npm audit` for details
はいった。
続き。
root@recorder:~/EPGStation # npm run build > EPGStation@1.7.5 build /root/EPGStation > gulp build --max_old_space_size=768 --env production sh: gulp: not found npm ERR! code ELIFECYCLE npm ERR! syscall spawn npm ERR! file sh npm ERR! errno ENOENT npm ERR! EPGStation@1.7.5 build: `gulp build --max_old_space_size=768 --env production` npm ERR! spawn ENOENT npm ERR! npm ERR! Failed at the EPGStation@1.7.5 build script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
うーん。npmわからん。。まあ無いと言ってるから足して、続き。
root@recorder:~/EPGStation # npm install gulp --no-save ... + gulp@4.0.2 updated 1 package, moved 1 package and audited 1086 packages in 8.725s found 0 vulnerabilities root@recorder:~/EPGStation # npm run build > EPGStation@1.7.5 build /root/EPGStation > gulp build --max_old_space_size=768 --env production [21:06:38] Node flags detected: --max_old_space_size=768 [21:06:38] Respawned to PID: 35061 [21:06:40] Using gulpfile ~/EPGStation/gulpfile.js [21:06:40] Starting 'build'... [21:06:40] Starting 'build-server'... [21:06:40] Starting 'clean-server'... [21:06:40] Finished 'clean-server' after 10 ms [21:06:40] Starting 'tslint-server'... [21:06:45] Finished 'tslint-server' after 5.66 s [21:06:45] Starting '<anonymous>'... [21:06:59] Finished '<anonymous>' after 13 s [21:06:59] Finished 'build-server' after 19 s [21:06:59] Starting 'build-client'... [21:06:59] Starting 'clean-client'... [21:06:59] Finished 'clean-client' after 7.8 ms [21:06:59] Starting 'tslint-client'... [21:07:02] Finished 'tslint-client' after 3.05 s [21:07:02] Starting '<anonymous>'... [21:07:18] Version: webpack 4.44.2 Built at: 09/24/2020 9:07:18 PM Asset Size Chunks Chunk Names app.js 1.71 MiB 0 [emitted] [big] main app.js.LICENSE.txt 5.3 KiB [emitted] Entrypoint main [big] = app.js [21:07:18] Finished '<anonymous>' after 16 s [21:07:18] Finished 'build-client' after 19 s [21:07:18] Starting 'client-css-build'... [21:07:19] Finished 'client-css-build' after 1.4 s [21:07:19] Finished 'build' after 39 s
設定の準備まで
ドキュメント通り。
root@recorder:~/EPGStation # cp config/config.sample.json config/config.json root@recorder:~/EPGStation # cp config/operatorLogConfig.sample.json config/operatorLogConfig.json root@recorder:~/EPGStation # cp config/serviceLogConfig.sample.json config/serviceLogConfig.json root@recorder:~/EPGStation #