2016-01-13 20:23:15 +01:00
|
|
|
#!/bin/bash
|
2017-08-03 02:03:53 +02:00
|
|
|
|
|
|
|
xo_branch="stable"
|
|
|
|
xo_server="https://github.com/vatesfr/xo-server"
|
|
|
|
xo_web="https://github.com/vatesfr/xo-web"
|
|
|
|
|
2017-08-03 02:08:58 +02:00
|
|
|
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_5.x"
|
|
|
|
yarn_gpg="https://dl.yarnpkg.com/debian/pubkey.gpg"
|
|
|
|
|
2016-01-26 21:35:27 +01:00
|
|
|
sudo apt-get install --yes nfs-common
|
2016-01-13 20:23:15 +01:00
|
|
|
cd /opt
|
2017-08-03 02:08:58 +02:00
|
|
|
curl -sL $node_source | sudo -E bash -
|
|
|
|
curl -sS $yarn_gpg | sudo apt-key add -
|
|
|
|
echo "$yarn_repo" | sudo tee /etc/apt/sources.list.d/yarn.list
|
2017-03-07 13:31:55 +01:00
|
|
|
sudo apt-get update
|
|
|
|
sudo apt-get install --yes nodejs yarn
|
2017-08-03 02:08:58 +02:00
|
|
|
curl -o /usr/local/bin/n $n_repo
|
2016-01-14 03:28:04 +01:00
|
|
|
sudo chmod +x /usr/local/bin/n
|
|
|
|
sudo n stable
|
2017-01-03 16:23:30 +01:00
|
|
|
sudo apt-get install --yes build-essential redis-server libpng-dev git python-minimal libvhdi-utils
|
2017-08-03 02:03:53 +02:00
|
|
|
git clone -b $xo_branch $xo_server
|
|
|
|
git clone -b $xo_branch $xo_web
|
2016-01-13 20:23:15 +01:00
|
|
|
cd xo-server
|
|
|
|
sudo npm install && npm run build
|
2016-01-14 03:28:04 +01:00
|
|
|
sudo cp sample.config.yaml .xo-server.yaml
|
|
|
|
sudo sed -i /mounts/a\\" '/': '/opt/xo-web/dist'" .xo-server.yaml
|
2016-01-13 20:23:15 +01:00
|
|
|
cd /opt/xo-web
|
2017-03-06 16:56:44 +01:00
|
|
|
yarn install --force
|
2016-03-08 21:38:21 +01:00
|
|
|
cat > /etc/systemd/system/xo-server.service <<EOF
|
|
|
|
# systemd service for XO-Server.
|
|
|
|
|
|
|
|
[Unit]
|
|
|
|
Description= XO Server
|
|
|
|
After=network-online.target
|
|
|
|
|
|
|
|
[Service]
|
|
|
|
WorkingDirectory=/opt/xo-server/
|
|
|
|
ExecStart=/usr/local/bin/node ./bin/xo-server
|
|
|
|
Restart=always
|
|
|
|
SyslogIdentifier=xo-server
|
|
|
|
|
|
|
|
[Install]
|
|
|
|
WantedBy=multi-user.target
|
|
|
|
EOF
|
|
|
|
|
|
|
|
sudo chmod +x /etc/systemd/system/xo-server.service
|
|
|
|
sudo systemctl enable xo-server.service
|
|
|
|
sudo systemctl start xo-server.service
|