Package Installation of Angie#

To install and update Angie using your distribution's package manager, add and configure the appropriate repository.

Distros#

Name

Versions

Architectures

AlmaLinux

9,   8

x86-64, arm64

Alpine

3.21,   3.20,   3.19,   3.18

x86-64, arm64

Alt

10
8

x86-64, arm64
x86-64

Astra SE

4.7
1.8, 1.7

arm64
x86-64

CentOS

9

x86-64, arm64

Debian

12,   11

x86-64, arm64

FreeBSD

14,   13

x86-64, arm64

MSVSphere

9

x86-64

openSUSE

15

x86-64, arm64

Oracle Linux

9,   8

x86-64, arm64

RED OS

8
7

x86-64
x86-64, arm64

Rocky Linux

9,   8

x86-64, arm64

ROSA

Chrome 12
Fresh 12

x86-64, arm64
x86-64

SberLinux

9

x86-64

Ubuntu

24.04,   22.04,   20.04

x86-64, arm64

Tip

We test and build code from our repository daily, and these nightly builds are suitable for exploring new features ahead of official releases.

The version of the nightly builds always corresponds to the upcoming release. The naming and installation process is generally similar to what's shown below, but instead of the path prefix https://download.angie.software/angie/* use https://download.angie.software/angie-nightly/*.

Alma, CentOS, MSVSphere, Oracle, RED OS, Rocky, ROSA, SberLinux#

  1. To add the repo, create a file named /etc/yum.repos.d/angie.repo with the following contents:

    [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
    
  2. Install the Angie package:

    $ sudo yum install -y angie
    
  3. (Optional) Install any extra packages you need:

    $ sudo yum install -y <PACKAGE NAME>
    
  4. Start the service:

    $ sudo systemctl start angie
    
  5. To autostart Angie after server reboot:

    $ sudo systemctl enable angie
    

Alpine#

  1. Install the prerequisites for adding the Angie repo:

    $ sudo apk update
    $ sudo apk add curl ca-certificates
    
  2. Download the public key of the Angie repo for package verification:

    $ sudo curl -o /etc/apk/keys/angie-signing.rsa \
                https://angie.software/keys/angie-signing.rsa
    
  3. Add the Angie repo:

    $ 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. Update the repo indexes:

    $ sudo apk update
    
  5. Install the Angie package:

    $ sudo apk add angie
    
  6. (Optional) Install any extra packages you need:

    $ sudo apk add <PACKAGE NAME>
    
  7. Start the service:

    $ sudo service angie start
    
  8. To autostart Angie on server reboot:

    $ sudo rc-update add angie
    

ALT Linux#

  1. Create the /etc/ssl/angie directory:

    $ sudo mkdir -p /etc/ssl/angie/
    
  2. Install the prerequisites for adding the Angie repo:

    $ sudo apt-get update
    $ sudo apt-get install -y curl apt-https
    
  3. Download the public key of the Angie repo for package verification:

    $ sudo curl -o /etc/ssl/angie/angie-signing.gpg \
          https://angie.software/keys/angie-signing.gpg
    
  4. Import the downloaded key into the trusted key ring:

    $ sudo gpg --no-default-keyring \
          --keyring /usr/lib/alt-gpgkeys/pubring.gpg --import /etc/ssl/angie/angie-signing.gpg
    
  5. Save the key's signature:

    $ 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. Add the Angie repo:

    $ echo "rpm [angie] https://download.angie.software/angie/altlinux/10/ $(uname -m) main" \
        | sudo tee /etc/apt/sources.list.d/angie.list > /dev/null
    
  7. Update the repo indexes:

    $ sudo apt-get update
    
  8. Install the Angie package:

    $ sudo apt-get install -y angie
    
  9. (Optional) Install any extra packages you need:

    $ sudo apt-get install -y <PACKAGE NAME>
    
  10. Start the service:

    $ sudo systemctl start angie
    
  11. To autostart Angie on server reboot:

    $ sudo systemctl enable angie
    

Astra SE#

  1. Install the prerequisites for adding the Angie repo:

    $ sudo apt-get update
    $ sudo apt-get install -y ca-certificates curl lsb-release
    
  2. Download the public key of the Angie repo for package verification:

    $ sudo curl -o /etc/apt/trusted.gpg.d/angie-signing.gpg \
                https://angie.software/keys/angie-signing.gpg
    
  3. Add the Angie repo:

    $ 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. Update the repo indexes:

    $ sudo apt-get update
    
  5. (Optional) When running a Closed Software Environment (CSE), install the key package for Angie binary verification:

    $ sudo apt-get install -y angie-digsig-key
    

    Update the CSE:

    $ sudo update-initramfs -uk all
    

    Then restart the server:

    $ sudo shutdown -r now
    
  6. Install the Angie package:

    $ sudo apt-get install -y angie
    
  7. (Optional) Install any extra packages you need:

    $ sudo apt-get install -y <PACKAGE NAME>
    

Debian, Ubuntu#

  1. Install the prerequisites for adding the Angie repo:

    $ sudo apt-get update
    $ sudo apt-get install -y ca-certificates curl
    
  2. Download the public key of the Angie repo for package verification:

    $ sudo curl -o /etc/apt/trusted.gpg.d/angie-signing.gpg \
                https://angie.software/keys/angie-signing.gpg
    
  3. Add the Angie repo:

    $ 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. Update the repo indexes:

    $ sudo apt-get update
    
  5. Install the Angie package:

    $ sudo apt-get install -y angie
    
  6. (Optional) Install any extra packages you need:

    $ sudo apt-get install -y <PACKAGE NAME>
    

FreeBSD#

  1. To add the Angie repo, create these directories:

    $ sudo mkdir -p /usr/local/etc/pkg/angie/ /usr/local/etc/pkg/repos/
    
  2. To configure the repo, create a file named /usr/local/etc/pkg/repos/angie.conf with the following contents:

    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. Download the public key of the Angie repo for package verification:

    $ sudo curl -o /usr/local/etc/pkg/angie/angie-signing.rsa \
                https://angie.software/keys/angie-signing.rsa
    
  4. Update the repo indexes:

    $ sudo pkg update
    
  5. Install the Angie package:

    $ sudo pkg install -y angie
    
  6. (Optional) Install any extra packages you need:

    $ sudo pkg install -y <PACKAGE NAME>
    
  7. Start the service:

    $ sudo service angie start
    
  8. To autostart Angie on server reboot:

    $ sudo sysrc angie_enable=YES
    

openSUSE#

  1. To add the repo, create a file named /etc/zypp/repos.d/angie.repo with the following contents:

    [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. Update the repo indexes:

    $ sudo zypper refresh
    
  3. Install the Angie package:

    $ sudo zypper install -y angie
    
  4. (Optional) Install any extra packages you need:

    $ sudo zypper install -y <PACKAGE NAME>
    
  5. Start the service:

    $ sudo systemctl start angie
    
  6. To autostart Angie after server reboot:

    $ sudo systemctl enable angie
    

Extras#

Besides the packages that provide the basic functionality, we also publish a few extra packages, both our own and built from curated third-party sources.

Console Light#

Console Light is a lightweight monitoring interface for Angie, published as angie-console-light in our repositories. It is installed in the same way as the angie package in the steps above; see the configuration steps in Console Light Web Monitoring Panel.

Dynamic Modules#

To extend the basic functionality of Angie, you can add various dynamic modules. Modules can be built from source against a corresponding version of Angie, but it is easier to get them as ready-made packages from our repository:

angie-module-image-filter

Adds a filter to transform JPEG, GIF, PNG, and WebP images.

angie-module-njs: HTTP JS module, streaming JS module

Enables using njs (a JavaScript subset) in Angie configuration in the http and stream contexts, respectively.

angie-module-perl

Enables writing location and variable handlers in Perl, and also invoking Perl from SSI.

angie-module-wamr

Enables integration with WebAssembly Micro Runtime for executing WASM code.

angie-module-wasm

Adds core WASM support.

angie-module-wasmtime

Enables integration with the Wasmtime runtime for executing WASM code.

angie-module-xslt

Adds a filter to transform XML responses with XSLT stylesheets.

To use an installed module in a configuration, load it using the load_module directive in the main context:

load_module modules/<module name>.so;

A wide range of third-party modules is also available.