compose-website/README.md

111 lines
3.1 KiB
Markdown
Raw Normal View History

2016-02-11 11:30:19 +00:00
# LibrePaaS
2014-10-17 12:13:06 +00:00
2016-02-11 11:30:19 +00:00
## Introduction
2014-10-17 12:13:06 +00:00
2016-02-11 11:30:19 +00:00
A PaaS that is aimed at hosting free software \o/
2015-03-10 12:40:23 +00:00
2016-08-06 14:20:59 +00:00
To install it, follow instructions in `INSTALL.md`.
2015-03-10 12:40:23 +00:00
2016-08-06 14:20:59 +00:00
### What is LibrePaaS
LibrePaaS is a little framework to host Docker. It is simple and modular and respect the convention over configuration paradigm.
This is aimed at Hosters to manage a huge amount of different web application, and a quantity of domain names related with emails and so on.
It is currently installed at 3 different hosters in production and hosting ~20 different web applications, with ~500 containers.
Once well installed, in one bash command, you'll be able to:
- buy a domain name
- configure DNS for it
- configure email for it
- configure dkim for that domain
- configure dmarc for that domain
- configure autoconfig for that domain
- install and start a web application on that domain (WordPress, Nextcloud, piwik...)
- provision a TLS cert on that domain
Amazing, right?
### Modular
2015-03-10 12:40:23 +00:00
2016-02-11 11:30:19 +00:00
The PaaS is really modular, that's why it contains the strict necessary, then you'll probably want to add `system` modules or `applications`.
2015-03-10 12:40:23 +00:00
2016-08-06 14:20:59 +00:00
It contains 2 [unit-files](https://github.com/indiehosters/LibrePaaS/tree/master/unit-files) to manage system modules and applications, start them at boot, and load the appropriate environment.
2016-09-02 14:13:54 +00:00
### Support
You can use the following channels to request community support:
- [mailinglist/forum](https://forum.indie.host/t/about-the-libre-sh-category/71)
- [chat](https://chat.indie.host/channel/libre.sh)
For paid support, just send an inquiry to libre.sh@indie.host.
All of this is hosted by libre.sh :)
2016-02-11 11:30:19 +00:00
## System modules
2015-03-10 12:40:23 +00:00
2016-02-11 11:30:19 +00:00
Here is a list of modules supported:
2016-08-06 14:20:59 +00:00
- https proxy:
- [HAProxy](https://github.com/indiehosters/haproxy)
- [Nginx](https://github.com/indiehosters/nginx)
2016-02-25 19:01:14 +00:00
- [git-puller](https://github.com/indiehosters/git-puller)
- [backups](https://github.com/indiehosters/backups)
- [sshd](https://github.com/indiehosters/sshd)
- [pull-backups](https://github.com/indiehosters/pull-backups)
2016-02-11 11:30:19 +00:00
Go to their respective page for more details.
2016-08-06 14:20:59 +00:00
### To install and start a module:
2016-02-11 11:30:19 +00:00
```
2016-02-25 19:01:14 +00:00
cd /system/
git clone module
2016-08-06 14:20:59 +00:00
cd module
2016-02-11 11:30:19 +00:00
systemctl enable s@module
2016-08-06 14:20:59 +00:00
start
```
### To debug a module:
2016-02-11 11:30:19 +00:00
```
2016-08-06 14:20:59 +00:00
docker-compose ps
docker-compose logs
stop
restart
```
## Applications
2016-02-11 11:30:19 +00:00
2016-08-06 14:20:59 +00:00
### Installation
2016-02-11 11:30:19 +00:00
2016-08-06 14:20:59 +00:00
To install application `wordpress` on `example.org`, first make point example.org to your server IP, and then, just run:
2015-03-10 12:40:23 +00:00
```
2016-02-11 11:30:19 +00:00
provision -a github.com/indiehosters/wordpress -u example.org -s
2015-03-10 12:40:23 +00:00
```
2016-02-11 11:30:19 +00:00
Run `provision` for more details on the capabilities of the script.
2015-03-10 12:40:23 +00:00
2016-08-06 14:20:59 +00:00
### debug an application
```
docker-compose ps
docker-compose logs
stop
start
restart
```
2016-02-11 11:30:19 +00:00
## Contributing
2016-02-25 19:01:14 +00:00
If you have any issue (something not working, missing doc), please do report an issue here! Thanks
2016-02-11 11:30:19 +00:00
This system is used in production at [IndieHosters](https://indiehosters.net/) so it is maintained. If you use it, please tell us, and we'll be really happy to update this README!
2014-09-26 12:57:09 +00:00
2016-02-11 11:30:19 +00:00
You can help us by:
- starring this project
- sending us a thanks email
- reporting bugs
- writing documentation/blog on how you got up and running in 5mins
- writing more documentation
- sending us cake :) We loove cake!