-
Notifications
You must be signed in to change notification settings - Fork 4
I.1. Requirements
- 2 GHz CPU is recommended. Though there is no actual limit, file processing may be annoyingly slow if your CPU is slow.
- 1-1.5 GB of free RAM. Technically, 200-300 MB should be enough, but due to a strange Node.js or Express bug memory consumption sometimes increases up to 700-800 MB for some 0.5-1 seconds and then decreases back to normal value.
Linux x32/x64. Any UNIX-like system will be OK (in theory). Tested on Centos 7.1 x64.
Node.js 5.0.0+. 4.2.x may be OK, but this is not tested. It is strongly recommended to download Node.js form the Node.js site, because the version in your OS repository is very likely to be outdated (0.x or something).
Important: Make sure that Node.js is in your PATH (on a UNIX-like system, type: which node, on Windows run node.exe).
-
Redisserver. The default configuration should be OK. Official site. -
Elasticsearchserver. The default configuration should be OK. Official site. Downloads are available here. Note: You will also have to install JRE/JDK. Here is the official manual on how to install and run Elasticsearch on Linux. -
sqlite3(including the dev libs). Official site. -
Cairo(for thecanvaspackage). Please, refer to npmjs. -
ImageMagick(for thumbnail creation). Official site. -
CImg,pHashandImageMagick(for image hash generation usingphash-imagepackage). Please, refer to npmjs. See the sections CImg and pHash for details. -
file(should supportvideo/webmMIME-type). You may get the source code here. There may be some issues withmp3files, please, refer to II.5. 3rdparty related issues. -
ffmpeg(with support ofmp3,ogg,webmandpng). Please, refer to this article for example of how to build ffmpeg with all required formats support. Another one (in Russian).
Important: Make sure all the libraries and tools are in the PATH.
The CImg package is typically called cimg-dev. It may be missing on some distros. In that case, download it from the official site (click the "Standard package" button), and install manually. You should put the CImg.h file and plugins directory into your /usr/include dir.
Unzip the downloaded archive and type:
sudo cp /path/to/unzipped-cimg/CImg.h /usr/include
sudo cp -r /path/to/unzipped-cimg/plugins /usr/include
The pHash package is typically called libphash0-dev. It may be missing on some distros. In that case, download it from the official size (click the "pHash 0.9.6 - Linux" link), and build it manually.
Untar the downloaded archive and type:
./configure --prefix=/usr --enable-video-hash=no --enable-audio-hash=no
make
sudo make install
Note: If the build fails (it does on some distros), open the ./Makefile file, find the line
SUBDIRS = src bindings examples
and replace it with
SUBDIRS = src bindings
(remove the examples target). Then run make again.