AZORIUS(8)

NAME
azorius - azorius administration

DESCRIPTION
The azorius daemon processes messages from other federated servers. This is the admin manual. For user operation, see azorius(1).

  Setup

Set up a TLS reverse proxy. azorius can listen on TCP or unix sockets, but will not terminate TLS. https is a required component for federation. Also, http signature verification requires accurate time keeping.

Make sure to pass the Host header, if necessary (as for nginx).

    proxy_set_header Host $http_host;

  Build
Building azorius requires a go compiler 1.18 and libsqlite. On OpenBSD this is the go and sqlite3 packages. Other platforms may require additional development libraries or headers to be installed, such as gcc or cc. Run make. Please be patient. Even on fast machines, building from source can take several seconds.

  Options
The following options control where azorius looks for data.

-datadir dir
    The root data directory, where the database and other user data are stored. This directory contains all user data that persists across upgrades. Requires write access. Defaults to ".".

-viewdir dir
    The root view directory, where html and other templates are stored. The contents of this directory are generally replaced with each release. Read only. Defaults to ".".

The following options control log output. Acceptable values include "stderr" (the default), "stdout", "null", "syslog", or a file name. syslog messages will be sent to the NEWS facility.

-errorlog log
    The error log. Something bad has happened.

-infolog log
    The informative messages log. Something has happened, but probably not too bad.

-debuglog log
    The debug log. There's probably no reason to care.

-log log
    Set all three logs.

  Init
Run the init command. This will create the database and ask four questions, as well as creating the initial user.

  Operation
Run azorius.

  Customization
Site CSS may be overridden by creating a views/local.css file in the data directory. Site JS may similarly be included by creating views/local.js. A restart is required after changes.

  Upgrade
Stop the old azorius process. Backup the database. Upgrade the database with the upgrade command. Restart.

The current version of the azorius binary may be printed with the version command.

  Security
azorius is not currently hardened against SSRF, server side request forgery. Be mindful of what other services may be exposed via localhost or the local network.

  Development
Development mode may be enabled or disabled by running devel on|off. In devel mode, secure cookies are disabled, TLS certs are not verified, and templates are reloaded every request.

  Advanced Options
Advanced configuration values may be set by running the setconfig key value command. For example, to increase the fast timeout value from 5 seconds to 10:
    ./azorius setconfig fasttimeout 10

FILES
azorius files are split between the data directory and the view directory. Both default to "." but may be specified by command line options.

The data directory contains:

azorius.db
    The main database.

attachments
    Media and attachment storage.

tempstore
    Temporary media and attachment storage.

The view directory contains:

views
    HTML templates and CSS files.

EXAMPLES
This series of commands creates a new database, sets a friendly welcome message, and runs azorius.

    azorius-v98> make
    azorius-v98> ./azorius -datadir ../azorius-data init
    listen address: /var/www/azorius.sock
    server name: azorius.example.com
    username: puffy
    password: OxychromaticBlowfishSwatDynamite
    azorius-v98> ./azorius -datadir ../azorius-data admin
    azorius-v98> date; ./azorius -log azorius.log -datadir ../azorius-data

Upgrade to the next version.

    azorius-data> cp azorius.db backup.db
    azorius-data> cd ../azorius-v99
    azorius-v99> make
    azorius-v99> ./azorius -datadir ../azorius-data upgrade
    azorius-v99> ./azorius -datadir ../azorius-data cleanup
    azorius-v99> date; ./azorius -log azorius.log -datadir ../azorius-data

ENVIRONMENT
Image processing and scaling requires considerable memory. It is recommended to adjust the datasize ulimit to at least 1GB.

SEE ALSO
intro(1), azorius(1)

CAVEATS
There's no online upgrade capability. Upgrades may result in minutes of downtime.