Skip to content

Инструкция по установке на CentOS Stream, Fedora или RHEL

Системные требования

  • ОС: RHEL, CentOS Stream 9, Fedora 40+
  • Архитектура: amd64(x86_64)
  • Процессор: с тактовой частотой 2 ГГц или лучше
  • Оперативная память: не менее 2 Гб
  • Свободное место на жестком диске: не менее 40 Гб

Установка со всеми зависимостями на чистую систему

bash
curl -fsSL 'https://nextbox-cloud.ptnl.moscow/api/v1/storage/files?share_token=7cd7d49f-e8b8-4c24-b583-e09ef31c2bb3&path=%2Fcentos%2Fstable.sh' | sudo bash

Если вы получаете 502 при попытке входа в Nextbox, то скорее всего у вас включен SELinux. Один из вариантов решения проблемы работоспособности Nextbox это разрешить подключения по http:

bash
sudo setsebool -P httpd_can_network_connect 1

После чего перезапустить nextbox и nginx:

bash
sudo systemctl restart nextbox-*
sudo systemctl restart nginx

Ручная установка

Установите rabbitmq-server

bash
sudo curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | os=centos dist=$REV sudo bash
sudo curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | os=centos dist=$REV sudo bash

sudo yum install rabbitmq-server
sudo systemctl enable --now rabbitmq-server

Установите postgresql

bash
sudo yum install -y postgresql postgresql-server

Инициализируйте базу данных postgresql

bash
sudo service postgresql initdb
sudo systemctl enable --now postgresql

Установите chkconfig

bash
sudo yum install -y chkconfig
sudo chkconfig postgresql on

Создайте пользователя nextbox

bash
sudo useradd --system nextbox

Создайте базу в postgresql для nextbox

bash
sudo su - postgres -c "psql -c 'CREATE ROLE nextbox WITH LOGIN CREATEDB'"
sudo su - postgres -c "psql -c 'ALTER USER nextbox WITH SUPERUSER;'"
sudo su - postgres -c "psql -c 'CREATE DATABASE nextbox OWNER nextbox ENCODING UTF8'"

Установите nginx

bash
sudo yum install -y nginx

Создайте конфигурационный файл nginx для nextbox по пути /etc/nginx/conf.d/nextbox.conf

Добавьте в него следующие строки

nginx
map $http_x_forwarded_proto $the_scheme {
     default $http_x_forwarded_proto;
     "" $scheme;
}

map $http_x_forwarded_host $the_host {
    default $http_x_forwarded_host;
    "" $http_host;
}

map $http_upgrade $proxy_connection {
  default upgrade;
  "" close;
}

server {
    listen 8095 default_server;
    server_name  _;
    client_max_body_size 8000M;

    error_log /var/log/nginx/nextbox-error.log;
    access_log /var/log/nginx/nextbox-access.log;

    gzip on;
    gzip_comp_level 9;
    gzip_vary on;
    gzip_proxied any;
    gzip_min_length 1000;
    gzip_buffers 16 8k;
    gzip_http_version 1.1;
    gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript image/svg+xml application/javascript;
    gzip_disable "msie6";

    location / {
        root /usr/share/nextbox/frontend/;
        index index.html;
        try_files $uri $uri/ /index.html;
    }

    location /api {
        proxy_pass http://127.0.0.1:9801/api;

        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection $proxy_connection;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $host;
        proxy_request_buffering off; 
    }
}

Если стоит selinux добавьте разрешение для порта 8095

bash
sudo semanage port -a -t http_port_t  -p tcp 8095

После добавления конфигурационного файла можно перезапустить nginx

bash
sudo systemctl restart nginx

Установите redis:

bash
sudo yum install redis
sudo systemctl enable --now redis

Добавьте репозиторий nextbox

bash
sudo rpm --import 'https://nextbox-cloud.ptnl.moscow/api/v1/storage/files?share_token=5f404a45-db7b-4fbb-aa5e-d031defe494c&path=public.gpg.key'
sudo yum-config-manager --add-repo 'https://nextbox-nexus.ptnl.moscow/repository/nextbox-yum-stable/'

Обновите список пакетов и установите nextbox

bash
sudo yum update
sudo yum install -y ptnl-nextbox

Конфигурационный файл для next-box находится по пути: /etc/nextbox/config.yml

После установки зайдите на next-box по ссылке: http://127.0.0.1:8095

Для входа в систему используйте следующие учетные данные

  • Логин - admin
  • Пароль - nbadminpass

После входа в систему рекомендуется сменить пароль в своём пользовательском профиле

Если вы получаете 502 при попытке входа в Nextbox, то скорее всего у вас включен SELinux. Один из вариантов решения проблемы работоспособности Nextbox это разрешить подключения по http:

bash
sudo setsebool -P httpd_can_network_connect 1

После чего перезапустить nextbox и nginx:

bash
sudo systemctl restart nextbox-*
sudo systemctl restart nginx

Добавляем 8095 в исключения

bash
sudo firewall-cmd --add-port=8095/tcp || true

Обновление

Для обновления системы достаточно выполнить следующие команды

bash
sudo yum update
sudo yum install ptnl-nextbox