mirror of
https://github.com/Jarli01/xenorchestra_installer
synced 2025-12-23 12:09:58 +00:00
Compare commits
74 Commits
SSL-docume
...
apt-transp
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6a065d7f35 | ||
|
|
450ae2d80f | ||
|
|
849a521945 | ||
|
|
7ac3e2bf2c | ||
|
|
174d0df759 | ||
|
|
70406d1191 | ||
|
|
7c4d8cc49f | ||
|
|
cf29ce65b5 | ||
|
|
fd3a080451 | ||
|
|
30674623fc | ||
|
|
32c00195b2 | ||
|
|
8096b69875 | ||
|
|
d2f8e85b8c | ||
|
|
f6a19807ef | ||
|
|
6cd254b818 | ||
|
|
e78174de6a | ||
|
|
0f9daf7a9a | ||
|
|
c0e0eaf99a | ||
|
|
bfe0693796 | ||
|
|
ae5f1567fd | ||
|
|
0803a856d0 | ||
|
|
405957bb6f | ||
|
|
c35e51382e | ||
|
|
61a16d36bd | ||
|
|
0c37e06812 | ||
|
|
bcf11ebeae | ||
|
|
d11212477d | ||
|
|
786121e1ba | ||
|
|
972b49c087 | ||
|
|
2682264cbe | ||
|
|
cd4acf239a | ||
|
|
657a30cb30 | ||
|
|
a7d8e2078e | ||
|
|
8819e2e278 | ||
|
|
dd046b485b | ||
|
|
7a8dafac6f | ||
|
|
ee2b149287 | ||
|
|
c59ce48a72 | ||
|
|
a20142ff64 | ||
|
|
c9b6d22ca1 | ||
|
|
34f6d29ef2 | ||
|
|
0bef04ccee | ||
|
|
497289ad7f | ||
|
|
58ae3c40b2 | ||
|
|
f3e41aac44 | ||
|
|
3553c1aa9e | ||
|
|
303fabf3b8 | ||
|
|
c2c4438a5b | ||
|
|
f1f9ca7790 | ||
|
|
b7b2527176 | ||
|
|
d4506d711f | ||
|
|
703ec75190 | ||
|
|
c07119107c | ||
|
|
6aa162aaaa | ||
|
|
309caa1d39 | ||
|
|
9b8c557eff | ||
|
|
23306312bd | ||
|
|
9f2220b36b | ||
|
|
669c684732 | ||
|
|
d2e079a672 | ||
|
|
cbd7d8a8c6 | ||
|
|
b6a5e6c9a9 | ||
|
|
55ca93427c | ||
|
|
14fa537cba | ||
|
|
798c69fb8a | ||
|
|
e267578e2e | ||
|
|
9689585263 | ||
|
|
af71f0d366 | ||
|
|
91e0922015 | ||
|
|
72e7c0e844 | ||
|
|
9b2841219f | ||
|
|
172bc49bb0 | ||
|
|
ae68b2313d | ||
|
|
25ef2828d2 |
@@ -71,7 +71,7 @@ further defined and clarified by project maintainers.
|
||||
### Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||
reported by contacting the project team at [INSERT EMAIL ADDRESS]. All
|
||||
reported by contacting the project team at xogithub@gmail.com. All
|
||||
complaints will be reviewed and investigated and will result in a response that
|
||||
is deemed necessary and appropriate to the circumstances. The project team is
|
||||
obligated to maintain confidentiality with regard to the reporter of an incident.
|
||||
|
||||
@@ -16,11 +16,9 @@ If you don't want NFS capabilities run ```sudo apt-get remove nfs-common```.
|
||||
* Do not use LAMP
|
||||
* SSH Access is optional, but highly recommended
|
||||
|
||||
## SSL and Reverse Proxies
|
||||
# Problems?
|
||||
|
||||
Please understand you are required to use a RP to setup SSL on XO (and XOCE). Some documentation on the process. https://xen-orchestra.com/docs/reverse_proxy.html
|
||||
|
||||
The YAML file required can be found at ```/opt/xen-orchestra/packages/xo-server/.xo-server.yaml```
|
||||
Check out our [Troubleshooting Page](https://github.com/Jarli01/xenorchestra_installer/blob/master/TROUBLESHOOTING.md)!
|
||||
|
||||
# Goals/Backstory for this script
|
||||
|
||||
@@ -34,3 +32,6 @@ That goal transformed into the desire to assist the developers of XOA by using a
|
||||
|
||||
While the goal initially was to have a solution as close to XOA as possible, with the script came the ability and goal to automate the installation. This is a big deal for these scripts today, while providing an as near-match solution to XOA as possible.
|
||||
|
||||
To keep XOCE up to date I recommend that anyone who's used this installation script or the sources installation to use this: https://github.com/Jarli01/xenorchestra_updater
|
||||
|
||||
|
||||
|
||||
71
TROUBLESHOOTING.md
Normal file
71
TROUBLESHOOTING.md
Normal file
@@ -0,0 +1,71 @@
|
||||
# Troubleshooting
|
||||
|
||||
If you are having problems, before you create an issue, please check the following. (You will be asked to provide this information anyways)
|
||||
|
||||
## Submitting a Support Request
|
||||
|
||||
Any issues, questions, or bugs during installation and usage of this script, that can not be solved by the steps below, should **first** be addressed in *this repository.*
|
||||
|
||||
Xen-Orchestra (Community Edition) is not obligated to support scripted (or manual) builds. Please give us the ability to first troubleshoot the issue and/or verify this script is not the culprit before moving on to posting in the Xen-Orchestra [Community Forums](https://xen-orchestra.com/forum/).
|
||||
|
||||
Please use the [ISSUE TEMPLATE](https://github.com/Jarli01/xenorchestra_installer/issues/new) when submitting an issue.
|
||||
|
||||
## XO Website not loading
|
||||
|
||||
If the XO website fails to load please run the below command to determine if the primary service is running.
|
||||
|
||||
systemctl status xo-server.service
|
||||
|
||||
A properly running system should look similar to this:
|
||||
|
||||
systemctl status xo-server.service
|
||||
● xo-server.service - XO Server
|
||||
Loaded: loaded (/lib/systemd/system/xo-server.service; enabled; vendor preset
|
||||
Active: active (running) since Wed 2018-04-11 08:51:41 EDT; 51s ago
|
||||
Main PID: 710 (node)
|
||||
Tasks: 10 (limit: 4915)
|
||||
Memory: 120.2M
|
||||
CPU: 2.209s
|
||||
CGroup: /system.slice/xo-server.service
|
||||
└─710 /usr/local/bin/node ./bin/xo-server
|
||||
|
||||
## XO not updating or you're stuck on a specific version.
|
||||
|
||||
If you ever get stuck on a specific revision of XO, or are receiving an alert saying "Please tell us who you are" from git you need to run the below:
|
||||
|
||||
git config --global user.email "you@example.com"
|
||||
git config --global user.name "Your Name"
|
||||
|
||||
Provide your name and email address in the quoted sections, without quotes and once done try updating again.
|
||||
|
||||
## Checking the logs
|
||||
|
||||
This will check and continually update the last 50 log files for your XOCE installation and thus is subject to any specific issues you're encountering. Just keep this command at the ready to check on things if you need too.
|
||||
|
||||
journalctl -u xo-server -f -n 50
|
||||
|
||||
## Required Dependencies
|
||||
|
||||
Your system must be able to install the following list of dependencies, usually this is automatic but some distributions might not have the required repositories. Plese confirm you can install these before creating a ticket.
|
||||
|
||||
Check your distribution respositories list ie: ```/etc/apt/sources.list``` for multiverse.
|
||||
|
||||
* build-essential
|
||||
* redis-server
|
||||
* libpng-dev
|
||||
* git
|
||||
* python-minimal
|
||||
* libvhdi-utils
|
||||
* nfs-common
|
||||
* lvm2
|
||||
* cifs-utils
|
||||
|
||||
These dependencies (on Ubuntu) are available from the ```multiverse``` and ```universe``` repositories.
|
||||
|
||||
## System Performance or General Errors Guidance
|
||||
|
||||
While XOCE can and does operate without issue for many people there are benefits to using using more than the absolute minimum system specifications for the guest OS.
|
||||
|
||||
There is a mandate for 1 GB of ram built into the installation script. While this is a requirement of XO it isn't a requirement of the OS.
|
||||
|
||||
An additional check is being considered to match the XOA system which is supplied with 2 CPU (or 1 CPU with 2 cores). While this currently isn't implemented; if you encounter issues please try adding an additional CPU to your installation and see if the issue persists.
|
||||
@@ -1,34 +0,0 @@
|
||||
If you are having issues before you create an issue please check the following. (We'll be asking you to look at and provide this information anyways)
|
||||
|
||||
# XO Website not loading
|
||||
|
||||
systemctl status xo-server.service
|
||||
|
||||
A properly running system should look similar to this:
|
||||
|
||||
systemctl status xo-server.service
|
||||
● xo-server.service - XO Server
|
||||
Loaded: loaded (/lib/systemd/system/xo-server.service; enabled; vendor preset
|
||||
Active: active (running) since Wed 2018-04-11 08:51:41 EDT; 51s ago
|
||||
Main PID: 710 (node)
|
||||
Tasks: 10 (limit: 4915)
|
||||
Memory: 120.2M
|
||||
CPU: 2.209s
|
||||
CGroup: /system.slice/xo-server.service
|
||||
└─710 /usr/local/bin/node ./bin/xo-server
|
||||
|
||||
# XO not updating or you're stuck on a specific version.
|
||||
|
||||
If you ever get stuck on a specific revision of XO, or are receiving an alert saying "Please tell us who you are" from git you need to run the below:
|
||||
|
||||
git config --global user.email "you@example.com"
|
||||
git config --global user.name "Your Name"
|
||||
|
||||
Provide your name and email address in the quoted sections, without quotes and once done try updating again.
|
||||
|
||||
# Checking the logs
|
||||
|
||||
This will check and continually update the last 50 log files for your XOCE installation and thus is subject to any specific issues you're encountering. Just keep this command at the ready to check on things if you need too.
|
||||
|
||||
journalctl -u xo-server -f -n 50
|
||||
|
||||
1
_config.yml
Normal file
1
_config.yml
Normal file
@@ -0,0 +1 @@
|
||||
theme: jekyll-theme-slate
|
||||
@@ -1,35 +1,56 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Check if we were effectively run as root
|
||||
[ $EUID = 0 ] || { echo "This script needs to be run as root!"; exit 1; }
|
||||
|
||||
# Check for 1GB Memory
|
||||
totalk=$(awk '/^MemTotal:/{print $2}' /proc/meminfo)
|
||||
if [ "$totalk" -lt "1000000" ]; then echo "XOCE Requires at least 1GB Memory!"; exit 1; fi
|
||||
|
||||
distro=$(/usr/bin/lsb_release -is)
|
||||
if [ "$distro" = "Ubuntu" ]; then /usr/bin/add-apt-repository multiverse; fi
|
||||
|
||||
xo_branch="master"
|
||||
xo_server="https://github.com/vatesfr/xen-orchestra"
|
||||
n_repo="https://raw.githubusercontent.com/visionmedia/n/master/bin/n"
|
||||
yarn_repo="deb https://dl.yarnpkg.com/debian/ stable main"
|
||||
node_source="https://deb.nodesource.com/setup_9.x"
|
||||
yarn_gpg="https://dl.yarnpkg.com/debian/pubkey.gpg"
|
||||
n_location="/usr/local/bin/n"
|
||||
xo_server_dir="/opt/xen-orchestra"
|
||||
systemd_service_dir="/lib/systemd/system"
|
||||
xo_service="xo-server.service"
|
||||
|
||||
#Install node and yarn
|
||||
# Ensures that Yarn dependencies are installed, git, curl, apt-transport-https
|
||||
/usr/bin/apt-get update
|
||||
/usr/bin/apt-get --yes install git curl apt-transport-https
|
||||
|
||||
#Install yarn
|
||||
cd /opt
|
||||
|
||||
/usr/bin/curl -sL $node_source | sudo -E bash -
|
||||
/usr/bin/curl -sS $yarn_gpg | sudo apt-key add -
|
||||
echo "$yarn_repo" | sudo tee /etc/apt/sources.list.d/yarn.list
|
||||
sudo /usr/bin/apt-get update
|
||||
sudo /usr/bin/apt-get install --yes nodejs yarn
|
||||
|
||||
#Install n
|
||||
/usr/bin/curl -sS $yarn_gpg | apt-key add -
|
||||
echo "$yarn_repo" | tee /etc/apt/sources.list.d/yarn.list
|
||||
/usr/bin/apt-get update
|
||||
/usr/bin/apt-get install --yes yarn
|
||||
|
||||
# Install n
|
||||
/usr/bin/curl -o $n_location $n_repo
|
||||
sudo /bin/chmod +x $n_location
|
||||
sudo /usr/local/bin/n stable
|
||||
/bin/chmod +x $n_location
|
||||
|
||||
#Install XO dependencies
|
||||
sudo /usr/bin/apt-get install --yes build-essential redis-server libpng-dev git python-minimal libvhdi-utils nfs-common
|
||||
# Install node via n
|
||||
n 8.16
|
||||
|
||||
# Symlink node directories
|
||||
ln -s /usr/bin/node /usr/local/bin/node
|
||||
|
||||
# Install XO dependencies
|
||||
/usr/bin/apt-get install --yes build-essential redis-server libpng-dev git python-minimal libvhdi-utils nfs-common lvm2 cifs-utils
|
||||
|
||||
/usr/bin/git clone -b $xo_branch $xo_server
|
||||
|
||||
# Disabling the "Built from Source Banner - No Support" Bar across the top of screen
|
||||
sed -i 's/process.env.XOA_PLAN === 5/process.env.XOA_PLAN === 6/g' /opt/xen-orchestra/packages/xo-web/src/xo-app/index.js
|
||||
|
||||
# Patch to allow config restore
|
||||
sed -i 's/< 5/> 0/g' /opt/xen-orchestra/packages/xo-web/src/xo-app/settings/config/index.js
|
||||
|
||||
@@ -38,13 +59,21 @@ cd $xo_server_dir
|
||||
/usr/bin/yarn build
|
||||
|
||||
cd packages/xo-server
|
||||
sudo cp sample.config.yaml .xo-server.yaml
|
||||
sudo sed -i "s|#'/': '/path/to/xo-web/dist/'|'/': '/opt/xen-orchestra/packages/xo-web/dist'|" .xo-server.yaml
|
||||
cp sample.config.toml .xo-server.toml
|
||||
sed -i "s|#'/' = '/path/to/xo-web/dist/'|'/' = '/opt/xen-orchestra/packages/xo-web/dist'|" .xo-server.toml
|
||||
|
||||
#Create node_modules directory if doesn't exist
|
||||
mkdir -p /usr/local/lib/node_modules/
|
||||
|
||||
# Symlink all plugins
|
||||
for source in $(ls -d /opt/xen-orchestra/packages/xo-server-*); do
|
||||
ln -s "$source" /usr/local/lib/node_modules/
|
||||
done
|
||||
|
||||
if [[ ! -e $systemd_service_dir/$xo_service ]] ; then
|
||||
|
||||
/bin/cat << EOF >> $systemd_service_dir/$xo_service
|
||||
# systemd service for XO-Server.
|
||||
# Systemd service for XO-Server.
|
||||
|
||||
[Unit]
|
||||
Description= XO Server
|
||||
@@ -61,9 +90,9 @@ WantedBy=multi-user.target
|
||||
EOF
|
||||
fi
|
||||
|
||||
sudo /bin/chmod +x $systemd_service_dir/$xo_service
|
||||
sudo /bin/systemctl enable $xo_service
|
||||
sudo /bin/systemctl start $xo_service
|
||||
/bin/systemctl daemon-reload
|
||||
/bin/systemctl enable $xo_service
|
||||
/bin/systemctl start $xo_service
|
||||
|
||||
echo ""
|
||||
echo ""
|
||||
|
||||
Reference in New Issue
Block a user