Package: nua-orchestrator
Nua orchestratorNuais an open source, self-hosted cloud platform project (a PaaS - platform as a service).This packaged is deployed on the Nua server.For end-users, the main entry point is thenuacommand line tool (see:Nua on PyPIornua-cli on GitHub).Role of the orchestratorThe orchestrator is in charge of configuring application and providers and deploying them on the host.RequirementsThe host must be a linux server installed with the distribution:Ubuntu 22.04.1 LTS (jammy)Note: this is temporary, the orchestrator will be able to manage other distributions later.In the current version, the orchestrator manages locally a single host.Note: this is temporary, the orchestrator will be able to manage multiple hosts later.The Nua Orchestrator will need a 'nua' administrator account with root privileges (sudoer and docker groups).The Nua Orchestrator will interfere with local providers such as Docker services and locally installed databases. The recommended configuration is therefore to use a dedicated server.The following Python packages (provided by Ubuntu) are required:python3.10python3.10-venvpython3.10-devpython3-pippipxi.e. you should runapt-get install python3.10 python3.10-venv python3.10-dev python3-pip pipxbefore installing Nua.Note: this is temporary, the installation script will take care of this kind of details later.InstallationAll-in-one commandSimply run:curl -L https://nua.rocks/install.py | sudo python3Using thenua-bootstrapcommandThenua-orchestratorpackage provides anua-bootstrapcommand which will install Nua on the host.Installation procedure (from released version)From the root account:pipx install nua-orchestratornua-bootstrapInstallation procedure (from git)At the moment, this implies a first temporary installation of Nua (which can be done in a temporary directory), from a sudo-able account:git clone https://github.com/abilian/nua srccd src/nua-orchestrator./install.pysudo ./env/bin/nua-bootstrapThat command will do many things:create thenuaaccountinstall the required packages (Docker, postgres, Nginx, ...)apply default configuration to the host...Remarksnua-bootstrapcan be safely launched on an existing configuration,Installation phasesInstallation can take several minutes, here an excerpt of main messages displayed during installation:sudo /home/nua/env/bin/nua-bootstrapInstalling Nua bootstrap on local host.Warning: Nua was already installed.Ign:1 http://downloads.mariadb.com/Tools/ubuntu jammy InReleaseHit:2 http://nova.clouds.archive.ubuntu.com/ubuntu jammy InRelease                                                                        [...]Installation of base packages:apt-get install --no-install-recommends -y ca-certificates curl docker.io lsb-release git nginx-light software-properties-common python3-certbot-nginx[...]Modifying /etc/sudoers for user 'nua' (full access with no passwd)-> Prior changes found: do nothingCreation of Python virtual environment for 'nua'-> Prior /home/nua/env found: do nothingInstall pip[...]Installation of postgres version 14apt-get install --no-install-recommends -y postgresql-14 libpq-dev[...]Setting Postgres passwordInstallation of Nua nginx configurationsystemctl restart nginxInstallation of local Nua orchestrator (via git)Cloning into 'nua'...[...]Nua installation done for user 'nua' on this host.Command 'nua --help':At the end of the installation, the available commands are displayed.DevelopmentDependency graph