Installing ffmpeg using docker

What is Docker?

Docker to run and manage apps side-by-side in isolated containers to get better compute density. Using containers, everything required to make a piece of software run is packaged into isolated containers. Unlike VMs, containers do not bundle a full operating system – only libraries and settings required to make the software work are needed. This makes for efficient, lightweight, self-contained systems and guarantees that software will always run the same, regardless of where it’s deployed.

  • Recommended for VPS as it consumes very less server resources.
  • This method is recommended for servers that use ffmpeg based application less frequently

Installation:

  1. Installing docker as a root user$ wget -qO- https://get.docker.com/ | sh

    The above command downloads and executes a small installation script written by the Docker team.

  2. Pull docker ffmpeg image$ docker pull jrottenberg/ffmpeg
  3. Add AliasOnce the Docker Installation has been completed, add below line in ~/.bashrc file

    $ alias ffmpeg='docker run -v=`pwd`:/tmp/workdir jrottenberg/ffmpeg'
    $ source ~/.bashrc #To reload .bashrc

  4. Verify installation $ ffmpeg -buildconf

ffmpeg version 3.2.4 Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.4) 20160609
configuration: –bindir=/usr/local/bin –disable-debug –disable-doc –disable-ffplay –disable-static –enable-avresample –enable-gpl –enable-libopencore-amrnb –enable-libopencore-amrwb –enable-libfdk_aac –enable-libmp3lame –enable-libopus –enable-libtheora –enable-libvorbis –enable-libvpx –enable-libx264 –enable-libx265 –enable-libxvid –enable-nonfree –enable-openssl –enable-postproc –enable-shared –enable-small –enable-version3 –extra-cflags=-I/usr/local/include –extra-ldflags=-L/usr/local/lib –extra-libs=-ldl –prefix=/usr/local
libavutil 55. 34.101 / 55. 34.101
libavcodec 57. 64.101 / 57. 64.101
libavformat 57. 56.101 / 57. 56.101
libavdevice 57. 1.100 / 57. 1.100
libavfilter 6. 65.100 / 6. 65.100
libavresample 3. 1. 0 / 3. 1. 0
libswscale 4. 2.100 / 4. 2.100
libswresample 2. 3.100 / 2. 3.100
libpostproc 54. 1.100 / 54. 1.100

configuration:
–bindir=/usr/local/bin
–disable-debug
–disable-doc
–disable-ffplay
–disable-static
–enable-avresample
–enable-gpl
–enable-libopencore-amrnb
–enable-libopencore-amrwb
–enable-libfdk_aac
–enable-libmp3lame
–enable-libopus
–enable-libtheora
–enable-libvorbis
–enable-libvpx
–enable-libx264
–enable-libx265
–enable-libxvid
–enable-nonfree
–enable-openssl
–enable-postproc
–enable-shared
–enable-small
–enable-version3
–extra-cflags=-I/usr/local/include
–extra-ldflags=-L/usr/local/lib
–extra-libs=-ldl
–prefix=/usr/local

That’s it!



Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.