Preparing the VM for installation
The IP addresses of the VMs on which NAICE is deployed must be configured statically.
To deploy the VM, it is required to install a set of packages available in the official repositories of the operating system in use.
A local mirror of the official repository, deployed within an isolated network and accessible from the target machine, can be used to install these packages via a package manager such as APT (Ubuntu, Astra Linux) or YUM (RedOS).
Deploy the VM in accordance with the requirements specified in section v1.1_3.1 System requirements.
NAICE installation
During a stand-alone offline installation, all actions are performed on the same host where NAICE will be deployed, and no separate VM is required.
Upload the archive provided below to the target host. The archive contains all required playbooks and images.
Download the latest stable version of NAICE for deployment in an isolated network from the v1.1_1.5 Stable versions
If necessary, the file can be downloaded to any PC with Internet access to the website https://cloud.eltex-co.ru (using the link above) and then transferred to the target host using any available SCP client into the home directory of the user who will perform the installation.
You can download it to the target host using wget if access to https://cloud.eltex-co.ru is available:
wget https://cloud.eltex-co.ru/index.php/s/KnrQ1cXuZsabGYh/download -O naice_install_2026-03-27.tar.gz
Extract the archive on the target host and navigate to the ansible directory inside the extracted folder:
tar xzvf naice_install_2026-03-27.tar.gz cd naice_install/ansible
In the inventory/hosts.yml file, specify the following:
In the ansible_host variable, specify the IP address or domain name that will be used to access the NAICE GUI. This address (or name) must be configured on the target host.
---
common:
hosts:
common_host:
ansible_host: <NAICE host IP address or domain name>
ansible_user: <username>
ansible_ssh_pass: <user password>
ansible_become_pass: <privilege escalation password (sudo)>
If necessary, configure playbook variables in the group_vars/all.yml file. Variable preparation is the same as for online installation and is performed in the same way. For more details on variable descriptions, refer to: v1.1_3.2 Installation using Ansible playbooks (stand-alone) → Configuring variables in the file group_vars/all.yml
Run the NAICE installation playbook:
ansible-playbook install-naice.yml -i inventory/hosts.yml
The installation process will start. As a result, the NAICE service will be installed. Make sure the installation completes without errors.
Example of successful installation completion:
PLAY RECAP ********************************************************************************************************************************************************************************************************************************** common_host : ok=110 changed=34 unreachable=0 failed=0 skipped=47 rescued=0 ignored=0
Next, verify the status of the services. To do this, navigate to the NAICE installation directory (default: /etc/docker-naice) and run the following command:
cd /etc/docker-naice/ sudo docker compose ps -a
Result (example shown for Ubuntu 24.04 LTS; may differ depending on the Docker Compose version):
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS epg-service naice-build-hosted.registry.eltex.loc/naice/epg-service:1.1-3 "/bin/sh -e /usr/loc…" epg-service 9 minutes ago Up 4 minutes (healthy) 0.0.0.0:8100->8100/tcp, [::]:8100->8100/tcp naice-aquila naice-release.registry.eltex.loc/naice-aquila:1.1 "java -cp @/app/jib-…" naice-aquila 9 minutes ago Up 3 minutes (healthy) 0.0.0.0:8091->8091/tcp, [::]:8091->8091/tcp, 0.0.0.0:49->1049/tcp, [::]:49->1049/tcp naice-bubo naice-release.registry.eltex.loc/naice-bubo:1.1 "java -cp @/app/jib-…" naice-bubo 9 minutes ago Up 3 minutes (healthy) 0.0.0.0:8093->8093/tcp, [::]:8093->8093/tcp naice-castor naice-release.registry.eltex.loc/naice-castor:1.1 "java -Djava.awt.hea…" naice-castor 9 minutes ago Up 3 minutes (healthy) 0.0.0.0:8095->8095/tcp, [::]:8095->8095/tcp naice-cetus naice-release.registry.eltex.loc/naice-cetus:1.1 "java -cp @/app/jib-…" naice-cetus 9 minutes ago Up 3 minutes (healthy) 0.0.0.0:8099->8099/tcp, [::]:8099->8099/tcp naice-gavia naice-release.registry.eltex.loc/naice-gavia:1.1 "java -cp @/app/jib-…" naice-gavia 9 minutes ago Up 2 minutes (healthy) 0.0.0.0:8080->8080/tcp, [::]:8080->8080/tcp naice-gulo naice-release.registry.eltex.loc/naice-gulo:1.1 "java -cp @/app/jib-…" naice-gulo 9 minutes ago Up 3 minutes (healthy) 0.0.0.0:8089->8089/tcp, [::]:8089->8089/tcp naice-lemmus naice-release.registry.eltex.loc/naice-lemmus:1.1 "java -cp @/app/jib-…" naice-lemmus 9 minutes ago Up 3 minutes (healthy) 0.0.0.0:8083->8083/tcp, [::]:8083->8083/tcp naice-lepus naice-release.registry.eltex.loc/naice-lepus:1.1 "java -cp @/app/jib-…" naice-lepus 9 minutes ago Up 3 minutes (healthy) 0.0.0.0:8087->8087/tcp, [::]:8087->8087/tcp, 0.0.0.0:67->1024/udp, [::]:67->1024/udp naice-mustela naice-release.registry.eltex.loc/naice-mustela:1.1 "java -cp @/app/jib-…" naice-mustela 9 minutes ago Up 3 minutes (healthy) 0.0.0.0:8070->8070/tcp, [::]:8070->8070/tcp naice-nats naice-build-hosted.registry.eltex.loc/naice/nats:1.1.7 "docker-entrypoint.s…" nats 9 minutes ago Up 4 minutes (healthy) 4222/tcp, 6222/tcp, 7777/tcp, 0.0.0.0:8222->8222/tcp, [::]:8222->8222/tcp naice-ovis naice-release.registry.eltex.loc/naice-ovis:1.1 "java -cp @/app/jib-…" naice-ovis 9 minutes ago Up 3 minutes (healthy) 0.0.0.0:8084->8084/tcp, [::]:8084->8084/tcp naice-phoca naice-release.registry.eltex.loc/naice-phoca:1.1 "java -cp @/app/jib-…" naice-phoca 9 minutes ago Up 4 minutes (healthy) 0.0.0.0:8097->8097/tcp, [::]:8097->8097/tcp naice-postgres naice-build-hosted.registry.eltex.loc/naice/postgres:1.1.6 "docker-entrypoint.s…" postgres 10 minutes ago Up 4 minutes (healthy) 5432/tcp naice-radius naice-release.registry.eltex.loc/naice-radius:1.1 "/docker-entrypoint.…" naice-radius 9 minutes ago Up 4 minutes (healthy) 0.0.0.0:1812-1813->1812-1813/udp, [::]:1812-1813->1812-1813/udp, 0.0.0.0:9812->9812/tcp, [::]:9812->9812/tcp naice-sterna naice-release.registry.eltex.loc/naice-sterna:1.1 "/docker-entrypoint.…" naice-sterna 9 minutes ago Up 2 minutes (healthy) 80/tcp, 0.0.0.0:8443->444/tcp, [::]:8443->444/tcp naice-ursus naice-release.registry.eltex.loc/naice-ursus:1.1 "java -cp @/app/jib-…" naice-ursus 9 minutes ago Up 4 minutes (healthy) 0.0.0.0:8081->8081/tcp, [::]:8081->8081/tcp naice-vulpus naice-release.registry.eltex.loc/naice-vulpus:1.1 "java -cp @/app/jib-…" naice-vulpus 9 minutes ago Up 3 minutes (healthy) 0.0.0.0:8086->8086/tcp, [::]:8086->8086/tcp naice-web naice-release.registry.eltex.loc/naice-web:1.1 "/docker-entrypoint.…" naice-web 9 minutes ago Up 2 minutes (healthy) 80/tcp, 0.0.0.0:443->443/tcp, [::]:443->443/tcp, 0.0.0.0:80->4200/tcp, [::]:80->4200/tcp
All containers must be running and have the healthy status. This indicates that the installation was completed successfully.