.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0

Installation
============

VID is delivered in a Docker image format.

Installing VID Using a Docker Image
-----------------------------------

Please follow the instructions given below, for installing VID using a Docker image.

1. Download the vid & mariadb Docker image

.. code-block:: bash

  docker pull mariadb:10
  docker login -u docker -p docker nexus3.onap.org:10001
  docker pull nexus3.onap.org:10001/onap/vid:1.2.1

2. Install by running following command (Use the path for the lf_config folder under the VID git repository as CONFIG_PATH)

.. code-block:: bash

   #start Maria-DB
   docker run --name vid-mariadb -e MYSQL_DATABASE=vid_openecomp_epsdk -e MYSQL_USER=vidadmin -e MYSQL_PASSWORD=YOUR_PASSWORD -e MYSQL_ROOT_PASSWORD=ROOT_PASSWORD -v CONFIG_PATH/vid-my.cnf:/etc/mysql/my.cnf -v /var/lib/mysql -d mariadb:10
   
   #start VID server
   docker run -e VID_MYSQL_DBNAME=vid_openecomp_epsdk -e VID_MYSQL_PASS=YOUR_PASSWORD --name vid-server -p 8080:8080 --link vid-mariadb:vid-mariadb-docker-instance -d nexus3.onap.org:10001/onap/vid:1.2.1

Or use docker-compose:

.. code-block:: bash

   docker-compose up