.. _custom-installation: Fully Customized Installation --------------------------------------------------------------- The FindFace Multi developer-friendly installer provides you with a few installation options, including the fully customized installation. This option is mostly used when deploying FindFace Multi in a highly distributed environment and requires a high level of knowledge and experience. To initiate the fully customized installation, do the following: #. Download the installer file ``findface-*.run``. #. Put the ``.run`` file into some directory on the designated host (for example, ``/home/username``). #. From this directory, make the ``.run`` file executable. .. note:: Be sure to specify the actual file name instead of ``findface-*``. .. code:: chmod +x findface-*.run #. Execute the ``.run`` file. .. code:: sudo ./findface-*.run The installer will ask you a few questions and perform several automated checks to ensure that the host meets the system requirements. After filling out each prompt, press :kbd:`Enter`. The questions and answers are the following: #. Q: ``Which product should be installed?`` A: ``1`` .. code:: Which product should be installed? 1. [multi ] FindFace Multi 2. [server ] FindFace Server 3. [video-worker] FindFace Video Worker (default: multi) product> 1 #. Q: ``Please choose installation type:`` A: ``4`` .. code:: Please choose installation type: - 1 [stand-alone ] Single Server - 2 [multi-worker] Single Server, Multiple video workers - 3 [images ] Don't configure or start anything, just load the images and copy the models - 4 [custom ] Fully customized installation (default: stand-alone) type> 4 #. Q: ``Directory to install into:`` A: Specify the FindFace Multi installation directory. The default suggestion is ``/opt/findface-multi``. Press :kbd:`Enter` to confirm it. Otherwise, specify the directory of your choice and press :kbd:`Enter`. .. code:: Directory to install into: (default: /opt/findface-multi) dest_dir> #. Q: ``Please enter path to docker-compose binary:`` A: Specify the actual path to the ``docker-compose`` binary. The default suggestion is ``/usr/local/bin/docker-compose`` and it is the path you get when you install ``docker-compose`` as :ref:`prescribed by this document `. Press :kbd:`Enter` to confirm it. Otherwise, specify another path and press :kbd:`Enter`. .. code:: Please enter path to docker-compose binary (default: /usr/local/bin/docker-compose) docker_compose> #. Q: ``Found X interface(s). Which one should we announce as our external address?`` A: Choose the interface that you are going to use as the instance IP address. .. code:: Found 1 interface(s). Which one should we announce as our external address? - 1 [lo ] 127.0.0.1 - 2 [ens3 ] 192.168.112.254 (default: 192.168.112.254) ext_ip.advertised> 2 #. Q: ``Found X interface(s). Which one should we announce as our inter-service communication address?`` A: Choose the interface for inter-service communication. .. code:: Found 1 interface(s). Which one should we announce as our inter-service communication address? - 1 [lo ] 127.0.0.1 - 2 [ens3 ] 192.168.112.254 (default: 192.168.112.254) inter_ip.advertised> 2 #. Q: ``Please select FindFace Multi components to install:`` A: Choose FindFace components to install. By default, all components are subject to installation. You can leave it as is by entering ``done``, or select specific components. Whenever you have to make a selection, first, deselect all the listed components by entering ``-*`` in the command line, then select required components by entering their sequence number (keyword), for example: ``1 7 13``, etc. Enter ``done`` to save your selection and proceed to another step. .. warning:: We do not recommend excluding the ``pause`` component from installation, as this will leave the remaining components without a network namespace to attach to. If you exclude the ``pause`` component intentionally, make sure to edit the ``/opt/findface-multi/docker-compose.yaml`` file and provide a host name for each service in the ``network_mode`` parameter. .. code:: Please select FindFace Multi components to install: - 1 [v] findface-data - Face recognition models ... ... Enter keyword to select matching choices or -keyword to clear selection. Enter "done" to save your selection and proceed to another step. components> done #. Specific questions related to the selected components: acceleration type, the required number of component instances, neural network models, etc. If you are experiencing a difficulty answering them, try to find an answer in this documentation, or submit your question to support@ntechlab.com. #. Q: ``Please set findface-multi admin password`` A: Set the Super Administrator (``superuser``) password. .. code:: Please set findface-multi admin password findface-multi-admin-password> admin The installer will pull the FindFace Multi images from the Ntechlab registry and start the associated services in Docker containers. #. Perform the :ref:`post-deployment procedures `. .. tip:: To install the same configuration of FindFace Multi on a different host, use the automatic deployment from the installation file. In this case, you won't have to answer the installation questions again. The exact path to the installation file is displayed right after the last question, before the installer starts active progress: .. code:: [I 2023-02-09 11:13:37,187 main:142] Your answers were saved to /tmp/findface-installer-p01n9sn3.json Be sure to remove fields ``*.config``, ``exp_ip``, and ``int_ip`` before installing FindFace Multi on a host with a different IP address. To launch the automatic deployment from the ``/tmp/.json`` file, execute: .. code:: sudo ./.run -f /tmp/.json