- Исходные данные
# cat /etc/os-release Ubuntu 18.04.2 LTS # unitd --version unit version: 1.9.0
- Установка
Создаем файл /etc/apt/sources.list.d/unit.list, куда добавляем:
- для Ubuntu 16.04deb https://packages.nginx.org/unit/ubuntu/ xenial unit deb-src https://packages.nginx.org/unit/ubuntu/ xenial unit
- для Ubuntu 18.04deb https://packages.nginx.org/unit/ubuntu/ bionic unit deb-src https://packages.nginx.org/unit/ubuntu/ bionic unit
Добавляем ключ:# curl -LSs https://nginx.org/keys/nginx_signing.key | apt-key add -
Устанавливаем unit:# apt-get update # apt-get install unit unit-dev
Далее, устанавливаем модули для поддержки языков. Можно установить все или же только те, которые нужны:
- для Ubuntu 16.04:# apt-get install unit-go unit-jsc8 unit-php unit-perl \ unit-python2.7 unit-python3.5 unit-ruby
- для Ubuntu 18.04:# apt-get install unit-go1.9 unit-go1.10 unit-jsc8 \ unit-jsc10 unit-php unit-perl unit-python2.7 unit-python3.6 unit-ruby
- Application и listener
Настройка unit производится через API. Для начала, запишем в файл (unit.config) конфигурацию для perl-приложения и listener:{ "applications": { "test_perl": { "type": "perl", "processes": { "max": 20, "spare": 5 }, "user": "www", "group": "www", "working_directory": "/home/test/cgi-bin", "script": "/home/test/cgi-bin/index.psgi" } }, "listeners": { "127.0.0.1:8380": { "application": "test_perl" } } }
Записываем конфиг в unit:# curl -X PUT -d @unit.config --unix-socket /run/control.unit.sock http://localhost/config
NGINX (упрощенно):server { listen 80; server_name localhost; root /home/test/htdocs; location / { try_files $uri @index; } location @index { proxy_pass http://127.0.0.1:8380; proxy_set_header Host $host; } }
Статья опубликована: 2019-05-30 19:46:35
Последние правки: 2019-07-08 12:09:54
Nginx Unit — это самостоятельный продукт от команды разработчиков nginx, который представляет из себя легковесный сервер приложений (application server) с открытым кодом, и предназначен «ответить на запросы сегодняшних динамических и распределённых приложений».