mirror of
https://github.com/Jarli01/xenorchestra_installer
synced 2025-12-23 12:09:58 +00:00
Compare commits
25 Commits
SSL-docume
...
Multiverse
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
90965ab4ec | ||
|
|
7d9ec145f1 | ||
|
|
b3d41b6fb9 | ||
|
|
7f7195eadf | ||
|
|
6aa162aaaa | ||
|
|
309caa1d39 | ||
|
|
9b8c557eff | ||
|
|
23306312bd | ||
|
|
9f2220b36b | ||
|
|
669c684732 | ||
|
|
d2e079a672 | ||
|
|
cbd7d8a8c6 | ||
|
|
b6a5e6c9a9 | ||
|
|
55ca93427c | ||
|
|
14fa537cba | ||
|
|
798c69fb8a | ||
|
|
e267578e2e | ||
|
|
9689585263 | ||
|
|
af71f0d366 | ||
|
|
91e0922015 | ||
|
|
72e7c0e844 | ||
|
|
9b2841219f | ||
|
|
172bc49bb0 | ||
|
|
ae68b2313d | ||
|
|
25ef2828d2 |
@@ -16,12 +16,6 @@ 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
|
||||
|
||||
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
|
||||
|
||||
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.
|
||||
|
||||
1
_config.yml
Normal file
1
_config.yml
Normal file
@@ -0,0 +1 @@
|
||||
theme: jekyll-theme-slate
|
||||
@@ -1,32 +1,49 @@
|
||||
#!/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
|
||||
|
||||
# Repository add - confirm required repoistor(ies) are enabled and active, update and upgrade no matter what
|
||||
multiverse="http://archive.ubuntu.com/multiverse"
|
||||
if ! grep -q "^deb .*$multiverse" /etc/apt/sources.list;
|
||||
then
|
||||
sudo add-apt-repository multiverse
|
||||
|
||||
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"
|
||||
node_source="https://deb.nodesource.com/setup_8.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"
|
||||
|
||||
#Ensure that git and curl are installed
|
||||
/usr/bin/apt-get update
|
||||
/usr/bin/apt-get --yes install git curl
|
||||
|
||||
#Install node and 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
|
||||
/usr/bin/curl -sL $node_source | bash -
|
||||
/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 nodejs 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
|
||||
/usr/local/bin/n lts
|
||||
|
||||
#Install XO dependencies
|
||||
sudo /usr/bin/apt-get install --yes build-essential redis-server libpng-dev git python-minimal libvhdi-utils nfs-common
|
||||
/usr/bin/apt-get install --yes build-essential redis-server libpng-dev git python-minimal libvhdi-utils nfs-common
|
||||
|
||||
/usr/bin/git clone -b $xo_branch $xo_server
|
||||
|
||||
@@ -38,8 +55,13 @@ 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.yaml .xo-server.yaml
|
||||
sed -i "s|#'/': '/path/to/xo-web/dist/'|'/': '/opt/xen-orchestra/packages/xo-web/dist'|" .xo-server.yaml
|
||||
|
||||
# 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
|
||||
|
||||
@@ -61,11 +83,11 @@ 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 ""
|
||||
echo "Installation complete, open a browser to:" && hostname -I && echo "" && echo "Default Login:"admin@admin.net" Password:"admin"" && echo "" && echo "Don't forget to change your password!"
|
||||
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user