mirror of
https://github.com/Jarli01/xenorchestra_installer
synced 2025-12-23 12:09:58 +00:00
Compare commits
1 Commits
Performanc
...
SSL-docume
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
caee328f96 |
@@ -16,6 +16,12 @@ If you don't want NFS capabilities run ```sudo apt-get remove nfs-common```.
|
|||||||
* Do not use LAMP
|
* Do not use LAMP
|
||||||
* SSH Access is optional, but highly recommended
|
* SSH Access is optional, but highly recommended
|
||||||
|
|
||||||
|
## SSL and Reverse Proxies
|
||||||
|
|
||||||
|
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```
|
||||||
|
|
||||||
# Goals/Backstory for this script
|
# Goals/Backstory for this script
|
||||||
|
|
||||||
I'm often asked "why can't this be run on CentOS or Fedora" to which my only reply is and has ever been: The goal was to be the XCP-ng of XS. Which means I wanted a solution that offered as much as XOA offers, while using what is available freely and from open sources. Without restrictions.
|
I'm often asked "why can't this be run on CentOS or Fedora" to which my only reply is and has ever been: The goal was to be the XCP-ng of XS. Which means I wanted a solution that offered as much as XOA offers, while using what is available freely and from open sources. Without restrictions.
|
||||||
@@ -28,6 +34,3 @@ 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.
|
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
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -32,28 +32,3 @@ This will check and continually update the last 50 log files for your XOCE insta
|
|||||||
|
|
||||||
journalctl -u xo-server -f -n 50
|
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 +0,0 @@
|
|||||||
theme: jekyll-theme-slate
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
bash -c "$(curl -s https://raw.githubusercontent.com/Jarli01/xenorchestra_installer/master/xoce)"
|
|
||||||
@@ -1,48 +1,32 @@
|
|||||||
#!/bin/bash
|
#!/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_branch="master"
|
||||||
xo_server="https://github.com/vatesfr/xen-orchestra"
|
xo_server="https://github.com/vatesfr/xen-orchestra"
|
||||||
n_repo="https://raw.githubusercontent.com/visionmedia/n/master/bin/n"
|
n_repo="https://raw.githubusercontent.com/visionmedia/n/master/bin/n"
|
||||||
yarn_repo="deb https://dl.yarnpkg.com/debian/ stable main"
|
yarn_repo="deb https://dl.yarnpkg.com/debian/ stable main"
|
||||||
node_source="https://deb.nodesource.com/setup_8.x"
|
node_source="https://deb.nodesource.com/setup_9.x"
|
||||||
yarn_gpg="https://dl.yarnpkg.com/debian/pubkey.gpg"
|
yarn_gpg="https://dl.yarnpkg.com/debian/pubkey.gpg"
|
||||||
n_location="/usr/local/bin/n"
|
n_location="/usr/local/bin/n"
|
||||||
xo_server_dir="/opt/xen-orchestra"
|
xo_server_dir="/opt/xen-orchestra"
|
||||||
systemd_service_dir="/lib/systemd/system"
|
systemd_service_dir="/lib/systemd/system"
|
||||||
xo_service="xo-server.service"
|
xo_service="xo-server.service"
|
||||||
|
|
||||||
# Ensure that git and curl are installed
|
|
||||||
/usr/bin/apt-get update
|
|
||||||
/usr/bin/apt-get --yes install git curl
|
|
||||||
|
|
||||||
#Install node and yarn
|
#Install node and yarn
|
||||||
cd /opt
|
cd /opt
|
||||||
|
|
||||||
/usr/bin/curl -sL $node_source | bash -
|
/usr/bin/curl -sL $node_source | sudo -E bash -
|
||||||
/usr/bin/curl -sS $yarn_gpg | apt-key add -
|
/usr/bin/curl -sS $yarn_gpg | sudo apt-key add -
|
||||||
echo "$yarn_repo" | tee /etc/apt/sources.list.d/yarn.list
|
echo "$yarn_repo" | sudo tee /etc/apt/sources.list.d/yarn.list
|
||||||
/usr/bin/apt-get update
|
sudo /usr/bin/apt-get update
|
||||||
/usr/bin/apt-get install --yes nodejs yarn
|
sudo /usr/bin/apt-get install --yes nodejs yarn
|
||||||
|
|
||||||
# Install n
|
#Install n
|
||||||
/usr/bin/curl -o $n_location $n_repo
|
/usr/bin/curl -o $n_location $n_repo
|
||||||
/bin/chmod +x $n_location
|
sudo /bin/chmod +x $n_location
|
||||||
|
sudo /usr/local/bin/n stable
|
||||||
|
|
||||||
# Symlink node directories
|
#Install XO dependencies
|
||||||
ln -s /usr/bin/node /usr/local/bin/node
|
sudo /usr/bin/apt-get install --yes build-essential redis-server libpng-dev git python-minimal libvhdi-utils nfs-common
|
||||||
|
|
||||||
# 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
|
/usr/bin/git clone -b $xo_branch $xo_server
|
||||||
|
|
||||||
@@ -54,21 +38,13 @@ cd $xo_server_dir
|
|||||||
/usr/bin/yarn build
|
/usr/bin/yarn build
|
||||||
|
|
||||||
cd packages/xo-server
|
cd packages/xo-server
|
||||||
cp sample.config.toml .xo-server.toml
|
sudo cp sample.config.yaml .xo-server.yaml
|
||||||
sed -i "s|#'/' = '/path/to/xo-web/dist/'|'/' = '/opt/xen-orchestra/packages/xo-web/dist'|" .xo-server.toml
|
sudo sed -i "s|#'/': '/path/to/xo-web/dist/'|'/': '/opt/xen-orchestra/packages/xo-web/dist'|" .xo-server.yaml
|
||||||
|
|
||||||
#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
|
if [[ ! -e $systemd_service_dir/$xo_service ]] ; then
|
||||||
|
|
||||||
/bin/cat << EOF >> $systemd_service_dir/$xo_service
|
/bin/cat << EOF >> $systemd_service_dir/$xo_service
|
||||||
# Systemd service for XO-Server.
|
# systemd service for XO-Server.
|
||||||
|
|
||||||
[Unit]
|
[Unit]
|
||||||
Description= XO Server
|
Description= XO Server
|
||||||
@@ -85,9 +61,9 @@ WantedBy=multi-user.target
|
|||||||
EOF
|
EOF
|
||||||
fi
|
fi
|
||||||
|
|
||||||
/bin/systemctl daemon-reload
|
sudo /bin/chmod +x $systemd_service_dir/$xo_service
|
||||||
/bin/systemctl enable $xo_service
|
sudo /bin/systemctl enable $xo_service
|
||||||
/bin/systemctl start $xo_service
|
sudo /bin/systemctl start $xo_service
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo ""
|
echo ""
|
||||||
|
|||||||
2
xoce
2
xoce
@@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
XOCE_URL=https://archive.org/download/xogithub_gmail_Xoce/xoce
|
XOCE_URL=https://drive.google.com/uc?export=download&confirm=ktXq&id=1eKz78LjkmrMHU95OC3qiQpPLuryJ2TEK
|
||||||
|
|
||||||
# Welcome message
|
# Welcome message
|
||||||
printf "\n\033[1mWelcome to the XOCE auto-deploy script!\033[0m\n\n"
|
printf "\n\033[1mWelcome to the XOCE auto-deploy script!\033[0m\n\n"
|
||||||
|
|||||||
Reference in New Issue
Block a user