<!-- review: finished -->

<a id="oss-packages"></a>

# Пакетная установка Angie

Чтобы установить и обновлять Angie
с помощью пакетного менеджера своего дистрибутива,
подключите и настройте соответствующий репозиторий.

<a id="distributions"></a>

## Дистрибутивы

| Название                          | Версии                                      | Архитектуры                               |
|-----------------------------------|---------------------------------------------|-------------------------------------------|
| [AlmaLinux](#install-yum-oss)     | 10, &ensp; 9, &ensp; 8                      | x86-64, arm64                             |
| [Alpine](#install-alpine-oss)     | 3.23, &ensp; 3.22, &ensp; 3.21, &ensp; 3.20 | x86-64, arm64                             |
| [Альт](#install-alt-oss)          | 11, &ensp; 10 <br /> 8                      | x86-64, arm64 <br /> x86-64               |
| [Astra SE](#install-astrase-oss)  | 4.7 <br /> 1.8, 1.7                         | arm64 <br /> x86-64                       |
| [CentOS](#install-yum-oss)        | 10, &ensp; 9                                | x86-64, arm64                             |
| [Debian](#install-deb-oss)        | 13, &ensp; 12, &ensp; 11                    | x86-64, arm64                             |
| [Fedora](#install-yum-oss)        | 43                                          | x86-64, arm64                             |
| [FreeBSD](#install-freebsd-oss)   | 15, &ensp; 14, &ensp; 13                    | x86-64, arm64                             |
| [МСВСфера](#install-yum-oss)      | 10, &ensp; 9 <br /> 8                       | x86-64, arm64 <br /> x86-64               |
| [openSUSE](#install-opensuse-oss) | 16, &ensp; 15                               | x86-64, arm64                             |
| [Oracle Linux](#install-yum-oss)  | 10, &ensp; 9, &ensp; 8                      | x86-64, arm64                             |
| [ОСнова](#install-osnova-oss)     | 3.3.0, &ensp; 2.13                          | x86-64                                    |
| [РЕД ОС](#install-yum-oss)        | 8, &ensp; 7                                 | x86-64, arm64                             |
| [Rocky Linux](#install-yum-oss)   | 10, &ensp; 9, &ensp; 8                      | x86-64, arm64                             |
| [РОСА](#install-yum-oss)          | Хром 13 <br /> Хром 12 <br /> Фреш 12       | x86-64 <br /> x86-64, arm64 <br /> x86-64 |
| [SberLinux](#install-yum-oss)     | 9                                           | x86-64                                    |
| [Ubuntu](#install-deb-oss)        | 24.04, &ensp; 22.04                         | x86-64, arm64                             |

<a id="test-builds"></a>

### Тестовые сборки

Мы ежедневно тестируем и собираем код из нашего репозитория,
и эти
[ежедневные сборки](https://download.angie.software/angie-nightly/)
подходят для знакомства с новыми возможностями до официального релиза.

Версия ежедневных сборок всегда соответствует ближайшему предстоящему релизу.
Названия и способ установки здесь в целом аналогичны приведенным ниже,
но вместо префикса пути `https://download.angie.software/angie/*`
используйте `https://download.angie.software/angie-nightly/*`.

<a id="install-yum-oss"></a>

### Alma, CentOS, Fedora, МСВСфера, Oracle, РЕД ОС, Rocky, РОСА, SberLinux

1. Чтобы подключить репозиторий, создайте файл
   `/etc/yum.repos.d/angie.repo`
   с таким содержимым:

   Alma
   ```ini
   [angie]
   name=Angie repo
   baseurl=https://download.angie.software/angie/almalinux/$releasever/
   gpgcheck=1
   enabled=1
   gpgkey=https://angie.software/keys/angie-signing.gpg.asc
   ```

   CentOS
   ```ini
   [angie]
   name=Angie repo
   baseurl=https://download.angie.software/angie/centos/$releasever/
   gpgcheck=1
   enabled=1
   gpgkey=https://angie.software/keys/angie-signing.gpg.asc
   ```

   Fedora
   ```ini
   [angie]
   name=Angie repo
   baseurl=https://download.angie.software/angie/fedora/$releasever/
   gpgcheck=1
   enabled=1
   gpgkey=https://angie.software/keys/angie-signing.gpg.asc
   ```

   МСВСфера
   ```ini
   [angie]
   name=Angie repo
   baseurl=https://download.angie.software/angie/msvsphere/$releasever/
   gpgcheck=1
   enabled=1
   gpgkey=https://angie.software/keys/angie-signing.gpg.asc
   ```

   Oracle
   ```ini
   [angie]
   name=Angie repo
   baseurl=https://download.angie.software/angie/oracle/$releasever/
   gpgcheck=1
   enabled=1
   gpgkey=https://angie.software/keys/angie-signing.gpg.asc
   ```

   РЕД ОС
   ```ini
   [angie]
   name=Angie repo
   baseurl=https://download.angie.software/angie/redos/$releasever/
   gpgcheck=1
   enabled=1
   gpgkey=https://angie.software/keys/angie-signing.gpg.asc
   ```

   Rocky
   ```ini
   [angie]
   name=Angie repo
   baseurl=https://download.angie.software/angie/rocky/$releasever/
   gpgcheck=1
   enabled=1
   gpgkey=https://angie.software/keys/angie-signing.gpg.asc
   ```

   РОСА Хром
   ```ini
   [angie]
   name=Angie repo
   baseurl=https://download.angie.software/angie/rosa-chrome/$releasever/
   gpgcheck=1
   enabled=1
   gpgkey=https://angie.software/keys/angie-signing.gpg.asc
   priority=9
   ```

   РОСА Фреш
   ```ini
   [angie]
   name=Angie repo
   baseurl=https://download.angie.software/angie/rosa/$releasever/
   gpgcheck=1
   enabled=1
   gpgkey=https://angie.software/keys/angie-signing.gpg.asc
   priority=9
   ```

   SberLinux
   ```ini
   [angie]
   name=Angie repo
   baseurl=https://download.angie.software/angie/sberlinux/$releasever/
   gpgcheck=1
   enabled=1
   gpgkey=https://angie.software/keys/angie-signing.gpg.asc
   priority=9
   ```
2. Установите пакет Angie:
   ```console
   $ sudo yum install -y angie
   $ # -- ИЛИ --
   $ sudo dnf install -y angie
   ```
3. ( *Необязательно*) Установите пакеты необходимых вам
   [дополнений](#install-extras-oss):
   ```console
   $ sudo yum install -y <ИМЯ ПАКЕТА>
   $ # -- ИЛИ --
   $ sudo dnf install -y <ИМЯ ПАКЕТА>
   ```
4. Запустите сервис:
   ```console
   $ sudo systemctl start angie
   ```
5. Чтобы автоматически запускать Angie после перезагрузки сервера:
   ```console
   $ sudo systemctl enable angie
   ```

<a id="install-alpine-oss"></a>

### Alpine

1. Установите вспомогательные пакеты
   для подключения репозитория Angie:
   ```console
   $ sudo apk update
   $ sudo apk add curl ca-certificates
   ```
2. Скачайте открытый ключ репозитория Angie
   для проверки подлинности пакетов:
   ```console
   $ sudo curl -o /etc/apk/keys/angie-signing.rsa \
               https://angie.software/keys/angie-signing.rsa
   ```
3. Подключите репозиторий Angie:
   ```console
   $ echo "https://download.angie.software/angie/alpine/v$(egrep -o \
          '[0-9]+\.[0-9]+' /etc/alpine-release)/main" \
          | sudo tee -a /etc/apk/repositories > /dev/null
   ```
4. Обновите индексы репозиториев:
   ```console
   $ sudo apk update
   ```
5. Установите пакет Angie:
   ```console
   $ sudo apk add angie
   ```
6. ( *Необязательно*) Установите пакеты необходимых вам
   [дополнений](#install-extras-oss):
   ```console
   $ sudo apk add <ИМЯ ПАКЕТА>
   ```
7. Запустите сервис:
   ```console
   $ sudo service angie start
   ```
8. Чтобы автоматически запускать Angie после перезагрузки сервера:
   ```console
   $ sudo rc-update add angie
   ```

<a id="install-alt-oss"></a>

### Альт

1. Создайте каталог `/etc/ssl/angie/`:
   ```console
   $ sudo mkdir -p /etc/ssl/angie/
   ```
2. Установите вспомогательные пакеты
   для подключения репозитория Angie:
   ```console
   $ sudo apt-get update
   $ sudo apt-get install -y curl apt-https
   ```
3. Скачайте открытый ключ репозитория Angie
   для проверки подлинности пакетов:
   ```console
   $ sudo curl -o /etc/ssl/angie/angie-signing.gpg \
         https://angie.software/keys/angie-signing.gpg
   ```
4. Импортируйте скачанный ключ репозитория в цепочку доверенных ключей:
   ```console
   $ sudo gpg --no-default-keyring \
         --keyring /usr/lib/alt-gpgkeys/pubring.gpg --import /etc/ssl/angie/angie-signing.gpg
   ```
5. Сохраните сигнатуру ключа:
   ```sh
   $ echo 'simple-key "angie" {
             Fingerprint "EB8EAF3D4EF1B1ECF34865A2617AB978CB849A76";
             Name "Angie (Signing Key) <devops@tech.wbsrv.ru>";
     }' | sudo tee /etc/apt/vendors.list.d/angie.list > /dev/null
   ```
6. Подключите репозиторий Angie:

   Альт 11
   ```console
   $ echo "rpm [angie] https://download.angie.software/angie/altlinux/11/ $(uname -m) main" \
       | sudo tee /etc/apt/sources.list.d/angie.list > /dev/null
   ```

   Альт 10
   ```console
   $ echo "rpm [angie] https://download.angie.software/angie/altlinux/10/ $(uname -m) main" \
       | sudo tee /etc/apt/sources.list.d/angie.list > /dev/null
   ```

   Альт СП 10
   ```console
   $ echo "rpm [angie] https://download.angie.software/angie/altlinux-sp/10/ $(uname -m) main" \
       | sudo tee /etc/apt/sources.list.d/angie.list > /dev/null
   ```

   Альт СП 8
   ```console
   $ echo "rpm [angie] https://download.angie.software/angie/altlinux-sp/8/ $(uname -m) main" \
       | sudo tee /etc/apt/sources.list.d/angie.list > /dev/null
   ```
7. Обновите индексы репозиториев:
   ```console
   $ sudo apt-get update
   ```
8. Установите пакет Angie:
   ```console
   $ sudo apt-get install -y angie
   ```
9. ( *Необязательно*) Установите пакеты необходимых вам
   [дополнений](#install-extras-oss):
   ```console
   $ sudo apt-get install -y <ИМЯ ПАКЕТА>
   ```
10. Запустите сервис:
    ```console
    $ sudo systemctl start angie
    ```
11. Чтобы автоматически запускать Angie после перезагрузки сервера:
    ```console
    $ sudo systemctl enable angie
    ```

<a id="install-astrase-oss"></a>

### Astra SE

1. Установите вспомогательные пакеты
   для подключения репозитория Angie:
   ```console
   $ sudo apt-get update
   $ sudo apt-get install -y ca-certificates curl lsb-release
   ```
2. Скачайте открытый ключ репозитория Angie
   для проверки подлинности пакетов:
   ```console
   $ sudo curl -o /etc/apt/trusted.gpg.d/angie-signing.gpg \
               https://angie.software/keys/angie-signing.gpg
   ```
3. Подключите репозиторий Angie:
   ```console
   $ echo "deb https://download.angie.software/angie/astra-se/$(egrep -o \
          '[0-9]+.[0-9]+' /etc/astra_version) unstable main" \
          | sudo tee /etc/apt/sources.list.d/angie.list > /dev/null
   ```
4. Обновите индексы репозиториев:
   ```console
   $ sudo apt-get update
   ```
5. ( *Необязательно*) При работе в режиме замкнутой программной среды
   ([ЗПС](https://wiki.astralinux.ru/pages/viewpage.action?pageId=41190634))
   установите пакет с ключом
   для проверки подлинности бинарных файлов Angie:
   ```console
   $ sudo apt-get install -y angie-digsig-key
   ```

   Обновите ЗПС:
   ```console
   $ sudo update-initramfs -uk all
   ```

   Затем **перезагрузите сервер**:
   ```console
   $ sudo shutdown -r now
   ```
6. Установите пакет Angie:
   ```console
   $ sudo apt-get install -y angie
   ```
7. ( *Необязательно*) Установите пакеты необходимых вам
   [дополнений](#install-extras-oss):
   ```console
   $ sudo apt-get install -y <ИМЯ ПАКЕТА>
   ```

<a id="install-deb-oss"></a>

### Debian, Ubuntu

1. Установите вспомогательные пакеты
   для подключения репозитория Angie:
   ```console
   $ sudo apt-get update
   $ sudo apt-get install -y ca-certificates curl
   ```
2. Скачайте открытый ключ репозитория Angie
   для проверки подлинности пакетов:
   ```console
   $ sudo curl -o /etc/apt/trusted.gpg.d/angie-signing.gpg \
               https://angie.software/keys/angie-signing.gpg
   ```
3. Подключите репозиторий Angie:
   ```console
   $ echo "deb https://download.angie.software/angie/$(. /etc/os-release && echo "$ID/$VERSION_ID $VERSION_CODENAME") main" \
       | sudo tee /etc/apt/sources.list.d/angie.list > /dev/null
   ```
4. Обновите индексы репозиториев:
   ```console
   $ sudo apt-get update
   ```
5. Установите пакет Angie:
   ```console
   $ sudo apt-get install -y angie
   ```
6. ( *Необязательно*) Установите пакеты необходимых вам
   [дополнений](#install-extras-oss):
   ```console
   $ sudo apt-get install -y <ИМЯ ПАКЕТА>
   ```

<a id="install-osnova-oss"></a>

### ОСнова

1. Установите вспомогательные пакеты
   для подключения репозитория Angie:
   ```console
   $ sudo apt-get update
   $ sudo apt-get install -y ca-certificates curl
   ```
2. Скачайте открытый ключ репозитория Angie
   для проверки подлинности пакетов:
   ```console
   $ sudo curl -o /etc/apt/trusted.gpg.d/angie-signing.gpg \
               https://angie.software/keys/angie-signing.gpg
   ```
3. Подключите репозиторий Angie:
   ```console
   $ echo "deb https://download.angie.software/angie/osnova/$(egrep -o \
          '[0-9]*' /etc/osnova_version | head -1) \
          $(. /etc/os-release && echo "$VERSION_CODENAME") main" \
          | sudo tee /etc/apt/sources.list.d/angie.list > /dev/null
   ```
4. Обновите индексы репозиториев:
   ```console
   $ sudo apt-get update
   ```
5. Установите пакет Angie:
   ```console
   $ sudo apt-get install -y angie
   ```
6. ( *Необязательно*) Установите пакеты необходимых вам
   [дополнений](#install-extras-oss):
   ```console
   $ sudo apt-get install -y <ИМЯ ПАКЕТА>
   ```

<a id="install-freebsd-oss"></a>

### FreeBSD

1. Чтобы подключить репозиторий Angie, создайте каталоги:
   ```console
   $ sudo mkdir -p /usr/local/etc/pkg/angie/ /usr/local/etc/pkg/repos/
   ```
2. Чтобы настроить репозиторий, создайте файл
   `/usr/local/etc/pkg/repos/angie.conf`
   с таким содержимым:
   ```console
   angie: {
      url: "https://download.angie.software/angie/freebsd/${VERSION_MAJOR}/${ARCH}",
      signature_type: "pubkey",
      pubkey: "/usr/local/etc/pkg/angie/angie-signing.rsa",
      enabled: yes
   }
   ```
3. Скачайте открытый ключ репозитория Angie
   для проверки подлинности пакетов:
   ```console
   $ sudo curl -o /usr/local/etc/pkg/angie/angie-signing.rsa \
               https://angie.software/keys/angie-signing.rsa
   ```
4. Обновите индексы репозиториев:
   ```console
   $ sudo pkg update
   ```
5. Установите пакет Angie:
   ```console
   $ sudo pkg install -r angie -y angie
   ```
6. ( *Необязательно*) Установите пакеты необходимых вам
   [дополнений](#install-extras-oss):
   ```console
   $ sudo pkg install -r angie -y <ИМЯ ПАКЕТА>
   ```
7. Запустите сервис:
   ```console
   $ sudo service angie start
   ```
8. Чтобы автоматически запускать Angie после перезагрузки сервера:
   ```console
   $ sudo sysrc angie_enable=YES
   ```

#### NOTE
Поскольку пакетный менеджер FreeBSD может неверно определять последнюю версию,
для обновления уже установленных пакетов используйте следующий подход:

```console
$ sudo pkg upgrade `pkg search -r angie angie-[0-9] | sort -Vr | head -1 | awk {'print $1'}`
```

<a id="install-opensuse-oss"></a>

### openSUSE

1. Чтобы подключить репозиторий, создайте файл
   `/etc/zypp/repos.d/angie.repo`
   `/etc/zypp/repos.d/angie.repo`
   с таким содержимым:
   ```ini
   [angie]
   name=Angie repo
   baseurl=https://download.angie.software/angie/opensuse/$releasever_major/
   gpgcheck=1
   enabled=1
   gpgkey=https://angie.software/keys/angie-signing.gpg.asc
   ```
2. Обновите индексы репозиториев:
   ```console
   $ sudo zypper refresh
   ```
3. Установите пакет Angie:
   ```console
   $ sudo zypper install -y angie
   ```
4. ( *Необязательно*) Установите пакеты необходимых вам
   [дополнений](#install-extras-oss):
   ```console
   $ sudo zypper install -y <ИМЯ ПАКЕТА>
   ```
5. Запустите сервис:
   ```console
   $ sudo systemctl start angie
   ```
6. Чтобы автоматически запускать Angie после перезагрузки сервера:
   ```console
   $ sudo systemctl enable angie
   ```

<a id="install-extras-oss"></a>

## Дополнения

Помимо пакетов, обеспечивающих основную функциональность,
мы также публикуем несколько дополнительных пакетов,
как наших собственных, так и из отобранных нами сторонних источников.

<a id="install-console-light-oss"></a>

### Веб-панель Console Light

Console Light — это облегченная веб-панель мониторинга Angie,
публикуемая в наших репозиториях в виде пакета `angie-console-light`.
Устанавливается он так же, как и пакет `angie` в инструкциях выше;
инструкции по настройке см. в разделе [Веб-панель мониторинга Console Light](https://angie.software//angie/docs/configuration/monitoring.md#monitoring).

<a id="install-dynamicmodules-oss"></a>

### Динамические модули

Чтобы расширить базовую функциональность Angie,
можно добавлять разнообразные динамические модули.
Модули можно [собирать из исходного кода](https://angie.software//angie/docs/installation/sourcebuild.md#sourcebuild),
компилируя их с соответствующей версией Angie,
но проще получить их в виде готовых пакетов из нашего репозитория:

| [angie-module-image-filter](https://angie.software//angie/docs/configuration/modules/http/http_image_filter.md#http-image-filter)                                                                                                     | Добавляет преобразования изображений в форматах JPEG, GIF, PNG и WebP.                                                                      |
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------|
| angie-module-njs:<br/>[JS](https://angie.software//angie/docs/installation/external-modules/http_js.md#http-js) (HTTP),<br/>[JS](https://angie.software//angie/docs/installation/external-modules/stream_js.md#stream-js) (потоковый) | Позволяют использовать язык njs (подмножество JavaScript)<br/>в конфигурации Angie соответственно в контекстах `http` и `stream`.           |
| [angie-module-perl](https://angie.software//angie/docs/configuration/modules/http/http_perl.md#http-perl)                                                                                                                             | Позволяет писать обработчики `location` и переменных на Perl,<br/>а также вызывать Perl из SSI.                                             |
| [angie-module-wamr](https://angie.software//angie/docs/configuration/modules/wasm/wasm_wamr.md#wasm-wamr)                                                                                                                             | Обеспечивает интеграцию с [WebAssembly Micro Runtime](https://github.com/bytecodealliance/wasm-micro-runtime)<br/>для выполнения WASM-кода. |
| [angie-module-wasm](https://angie.software//angie/docs/configuration/modules/wasm/index.md#wasm-core)                                                                                                                                 | Добавляет базовую поддержку WASM.                                                                                                           |
| [angie-module-wasmtime](https://angie.software//angie/docs/configuration/modules/wasm/wasm_wasmtime.md#wasm-wasmtime)                                                                                                                 | Обеспечивает интеграцию со средой выполнения [Wasmtime](https://wasmtime.dev/) для выполнения WASM-кода.                                    |
| [angie-module-xslt](https://angie.software//angie/docs/configuration/modules/http/http_xslt.md#http-xslt)                                                                                                                             | Добавляет фильтр, преобразующий XML-ответ с помощью XSLT-шаблонов.                                                                          |

Чтобы применить установленный модуль в [конфигурации](https://angie.software//angie/docs/configuration/configfile.md#configfile),
загрузите его с помощью директивы [load_module](https://angie.software//angie/docs/configuration/modules/core.md#load-module) в контексте `main`:

```nginx
load_module modules/<имя модуля>.so;
```

Также доступен целый ряд [сторонних модулей](https://angie.software//angie/docs/installation/external-modules/index.md#install-thirdpartymodules).
