XOA Installation in Linux
Created: 2019-03-11 23:07:57 | Last modified: 2022-03-13 00:23:02 | By: NovaAccess: Read | Visibility: Public | Views: 440 | Rating: N/A | Tags: xoa xen orchestra
Set of instructions with how to install XOA (Xen Orchestra) from source code on a Debian system
Installation of XOA

Requirements
- Debian 9.x system
- 2GB memory (4GB recommended)
- CPU - A decent amount for the build
First start off with a fresh Debian 9 system. In this example it is Debian 9.8. Run the following commands line by line and check for any errors that might occur.
Initial Setup
Initial server packages
apt-get install sudo ssh
Install required packages
sudo apt-get install build-essential redis-server libpng-dev git python-minimal nfs-common curl
Install Node.js
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - sudo apt-get install -y nodejs
Install Yarn
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list sudo apt-get update && sudo apt-get install yarn
Installation of XOA
Download sourcecode
cd /opt/ sudo git clone -b master http://github.com/vatesfr/xen-orchestra
Build the code
cd xen-orchestra/ sudo yarn sudo yarn build
Copy the sample
cd /opt/xen-orchestra/packages/xo-server cp sample.config.toml .xo-server.toml
Edit the config, and modify the http mount (in bold)
vi /opt/xen-orchestra/packages/xo-server/.xo-server.toml [http.mounts] '/' = '../xo-web/dist/'
Configuration
Link extra modules
sudo ln -s /opt/xen-orchestra/packages/xo-server-transport-email /opt/xen-orchestra/packages/xo-server/node_modules sudo ln -s /opt/xen-orchestra/packages/xo-server-backup-reports /opt/xen-orchestra/packages/xo-server/node_modules sudo ln -s /opt/xen-orchestra/packages/xo-server-auth-ldap /opt/xen-orchestra/packages/xo-server/node_modules
Autostart of the service
Edit the service file and paste the following
sudo vi /etc/systemd/system/xo-server.service
# systemd service for XO-Server. [Unit] Description= XO Server After=network-online.target [Service] WorkingDirectory=/opt/xen-orchestra/packages/xo-server/bin ExecStart=/usr/bin/yarn start Restart=always SyslogIdentifier=xo-server [Install] WantedBy=multi-user.target
Reload the daemon, enable the service and start XOA
sudo systemctl daemon-reload sudo systemctl enable xo-server.service sudo systemctl start xo-server.service
Logging in
You should now be able to log into the applcation using your browser
http://[YOUR IP ADDRESS]
User: admin@admin
Pass: admin
Updating XOA
To update XOA, you should snapshot the VM, use GIT to pull the updates and Yarn to rebuild
cd /opt/xen-orchestra/ sudo git pull --ff-only sudo yarn sudo yarn build