Running Shinobi CCTV in Docker on Ubuntu Server

What is Shinobi?

Shinobi is Open Source, written in Node.js, and real easy to use. It is the future of CCTV and NVR for developers and end-users alike. It is catered to by professionals and most importantly by the one who created it. -https://shinobi.video/

Installing Docker

  1. Log into the Linux based device
  2. Run the following commands in the terminal
    # install prerequisites
    sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg-agent -y
    # add docker gpg key
    curl -fsSL https://download.docker.com/linux/$(awk -F'=' '/^ID=/{ print $NF }' /etc/os-release)/gpg | sudo apt-key add -
    # add docker software repository
    sudo add-apt-repository "deb [arch=$(dpkg --print-architecture)] https://download.docker.com/linux/$(awk -F'=' '/^ID=/{ print $NF }' /etc/os-release) $(lsb_release -cs) stable"
    # install docker
    sudo apt install docker-ce docker-compose containerd.io -y
    # enable and start docker service
    sudo systemctl enable docker && sudo systemctl start docker
    # add the current user to the docker group
    sudo usermod -aG docker $USER
    # reauthenticate for the new group membership to take effect
    su - $USER

Running the Shinobi Container

  1. Now that Docker is installed, run the following commands to setup the Shinobi Docker container and run it
    # create working directories
    sudo mkdir /home/$USER/docker/shinobi/config -p && sudo mkdir /home/$USER/docker/shinobi/data && sudo mkdir /home/$USER/docker/shinobi/videos
    # run the Run Shinobi docker container
    docker run -d -p 8080:8080 -v /etc/localtime:/etc/localtime:ro -v /etc/timezone:/etc/timezone:ro -v /home/$USER/docker/shinobi/config:/config -v /home/$USER/docker/shinobi/data:/var/lib/mysql -v /home/$USER/docker/shinobi/videos:/opt/shinobi/videos -v /dev/shm/shinobiDockerTemp:/dev/shm/streams migoller/shinobidocker
  2. Open a web browser and navigate to http://DNSorIP:8080/super
  3. Login with the username admin@shinobi.video and password admin
  4. Select Preferences from the top navigation menu
  5. Change the admin user email address and enter and confirm a new password
  6. Click Save at the top of the page
  7. Welcome to Shinobi

Documentation: https://registry.hub.docker.com/r/migoller/shinobidocker/