Vagrant Debian support (and experimental CentOS)

This changes the Vagrant setup to support multiple installations as multiple
boxes. In addition to Ubuntu Vagrant can now be used to install on Debian
as well as on CentOS.

I took the chance to clean up the .deb install a bit and backported analyzer
and celery to SysV proper so it runs there. Some of the distro specfics were
moved to the install script from the python setup scripts to acheive this.

For the CentOS support I added a rather involved OS prepare script. In the
long term this will be added to the preparing-the-server docs we already have.

I had to switch the default port to http-alt (8080). On CentOS 9080 is registered
for ocsp and getting it to work for apache without hacking SELinux is hard. I
think 8080 is the RFC way to go anyhow. If anyone want to override this it
should be rather easy using the --web-port arg and by hacking Vagrantfile.

The PyOpenSSL code has been refactored for all the distros that the Vagrantfile
now supports.

As far as my checks go, I tried this code with all the distros, uploaded a track
and downloaded a unicode and a ssl podcast and was able to listen to them
in each case.

In the experimental CentOS case, the UI is not up to spec since services
need to get scheduled through systemctl and the status overview (ie. on the /?config page)
do not work properly. They need to be as follows:

```
sudo systemctl start airtime-playout
sudo systemctl start airtime-liquidsoap
sudo systemctl start airtime_analyzer.service
sudo systemctl start airtime-celery.service
```
This commit is contained in:
Lucas Bickel 2017-03-08 12:39:59 +01:00
parent c8b4d40eb2
commit c29285ae48
19 changed files with 448 additions and 201 deletions

View file

@ -20,10 +20,10 @@ The easiest way to check out LibreTime for yourself is to run a local instance i
```bash
git clone https://github.com/libretime/libretime.git
cd libretime
vagrant up
vagrant up ubuntu
```
If everything works out, you will find LibreTime on [port 9080](http://localhost:9080), icecast on [port 8000](http://localhost:8000) and the docs on [port 8888](http://localhost:8888).
If everything works out, you will find LibreTime on [port 8080](http://localhost:8080), icecast on [port 8000](http://localhost:8000) and the docs on [port 8888](http://localhost:8888).
Of course, this setup isn't appropriate for production use. For that, check out our [installation instructions](install.md). More information on the vagrant setup are in [the docs](vagrant.md).

View file

@ -4,7 +4,7 @@ These Airtime instructions are outdated, see [install.md](../../install.md) for
The following instructions assume that you have root access (**sudo** on Ubuntu) to a GNU/Linux server, and are familiar with basic command line tasks. Experienced system administrators may prefer to skip to the *Expert install* chapter in the appendix of this book after preparing the server as shown in the steps below.
The recommended Airtime server platform is Debian 7.2 'wheezy'. Ubuntu 12.04 LTS 'Precise Pangolin' is also supported. Users of other GNU/Linux distributions may be able to adapt these instructions to suit their needs.
The recommended Airtime server platform is Debian 8 'jessie'. Ubuntu 14.04 LTS 'Trusty Tahir' is also supported. Users of other GNU/Linux distributions may be able to adapt these instructions to suit their needs.
The server should have at least a 1GHz processor and 1GB of RAM, preferably 2GB RAM or more. If you are using a desktop environment and web browser directly on the server you should install at least 2GB RAM, to avoid swapping to disk.

View file

@ -20,13 +20,25 @@ To get started you clone the repo and run `vagrant up`.
```bash
git clone https://github.com/libretime/libretime.git
cd libretime
vagrant up
vagrant up ubuntu
```
If everything works out, you will find LibreTime on [port 9080](http://localhost:9080), icecast on [port 8000](http://localhost:8000) and the docs on [port 8888](http://localhost:8888).
If everything works out, you will find LibreTime on [port 8080](http://localhost:8080), icecast on [port 8000](http://localhost:8000) and the docs on [port 8888](http://localhost:8888).
Once you reach the web setup GUI you can click through it using the default values. To connect to the vagrant machine you can run `vagrant ssh` in the libretime directory.
Once you reach the web setup GUI you can click through it using the default values. To connect to the vagrant machine you can run `vagrant ssh ubuntu` in the libretime directory.
## Alternative OS installations
With the above instructions LibreTime is installed on Ubuntu Trusty Tahir. The Vagrant setup offers the option to choose a different operation system according to you needs.
| OS | Command | Comment |
| ------ | ------------------- | ------- |
| Ubuntu | `vagrant up ubuntu` | Current default install since it was used by legacy upstream, based on Trusty Tahir . |
| Debian | `vagrant up debian` | Recommended install on Jessie as per the docs. |
| CentOS | `vagrant up centos` | Experimental install on 7.3 with native systemd support and activated SELinux. |
## Troubleshooting
If anything fails during the initial provisioning step you can try running `vagrant provision` to rerun the installer.
If you only want to re-run parts of the installer, use `--provision-with install`. The supported steps are `prepare`, `install`, `install-mkdocs` and `start-mkdocs`.