Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/whaler/whaler-haproxy-plugin
Whaler haproxy plugin
https://github.com/whaler/whaler-haproxy-plugin
haproxy plugin whaler
Last synced: 10 days ago
JSON representation
Whaler haproxy plugin
- Host: GitHub
- URL: https://github.com/whaler/whaler-haproxy-plugin
- Owner: whaler
- License: mit
- Created: 2015-10-28T08:55:06.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2023-08-23T10:19:39.000Z (over 1 year ago)
- Last Synced: 2024-04-29T19:42:21.033Z (9 months ago)
- Topics: haproxy, plugin, whaler
- Language: JavaScript
- Size: 29.3 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Whaler haproxy plugin
This plugin install haproxy as a load balancer for whaler.
Plugin is useful when you need deploy multiple applications on one server, or use complex application publishing.## Install
```sh
whaler plugins:install whaler-haproxy-plugin
```## Dnsmasq
The only reason why `dnsmasq` is needed is to point all the domains `*.whaler.lh` to machine where docker is installed.
On `linux` it is `127.0.0.1`, on `windows` and `mac` it's virtual machines's IP.> **NB!** Dnsmasq step is pure optional, but then you need manually add records to `/etc/hosts` file.
Install dnsmasq:
```sh
sudo apt-get install dnsmasq
```Update config file `/etc/dnsmasq.conf` with following line:
```
address=/whaler.lh/127.0.0.1
```> **NB!** Don't forget to replace 127.0.0.1 with virtual machine ip, if not on linux.
### How to avoid conflicts between `dnsmasq` and `systemd-resolved`
Update config file `/etc/dnsmasq.conf` with following lines:
```
server=8.8.8.8
server=8.8.4.4
# ...
```Run this commands:
```sh
sudo systemctl stop systemd-resolved
sudo systemctl disable systemd-resolved
sudo sed -i 's/\[main\]/\[main\]\ndns=dnsmasq/g' /etc/NetworkManager/NetworkManager.conf
sudo systemctl restart NetworkManager
sudo rm /etc/resolv.conf
sudo ln -s /var/run/NetworkManager/resolv.conf /etc/resolv.conf
sudo systemctl restart dnsmasq
```## Usage
```yml
services:
service-name:
web: 80
ssl: 443
...# OR
services:
service-name:
web:
port: 80
defaults: |
timeout server 50s
ssl:
port: 443
send-proxy: true
...
```## License
This software is under the MIT license. See the complete license in:
```
LICENSE
```