bouncy-forever
Wiring up bouncy and forever to provide a streamlined service:
- Launch multiple servers(processes) and have them listen to different ports.
- Forward requests for multiple domains to the desired servers(processes).
Install
> npm install -g bouncy-forever
Usage
This package aims at simple setup for doing the job. There are only 2 steps in setting this up.
- Create a configuration file at
~/.bouncy-forever/config.json
- Run the bouncy-forever server:
> bouncyforever
~/.bouncy-forever/config.json
)
The configuration file (File structure:
Do NOT specify env.PORT
for your app since bouncy-forever will assign it to a free port.
This also means that your app should listen to env.PORT
for bouncy-forever to work.
Alternatively, you can specify the port by using $PORT
in your start_script
entry. You could see this in the above example.
Command Line Interface (CLI)
To run the server:
> bouncyforever
`cv` launched and listening on port 38186...
`ycmjason.com` launched and listening on port 46606...
Mapping...
cv.ycmjason.com:8080(cv) to port 38186
ycmjason.com:8080(ycmjason.com) to port 46606
bouncy-forever server launched and listening on port 8080...
You can also run the server as a daemon (i.e. in the background):
> bouncyforever start
Starting bouncy-forever-server daemon...
bouncy-forever-server daemon started. PID: 10614
> bouncyforever restart
Stopping bouncy-forever-server daemon...
bouncy-forever-server daemon stopped.
Starting bouncy-forever-server daemon...
bouncy-forever-server daemon started. PID: 11023
> bouncyforever stop
Stopping bouncy-forever-server daemon...
bouncy-forever-server daemon stopped.
The bouncy-forever server will listen on port 8080
by default but could easily be changed by specifying the PORT
environment variable:
> PORT=80 bouncyforever
Logs
The output of your apps will be piped into the following directory ~/.bouncy-forever/logs/
.
> cd ~/.bouncy-forever/logs/
> ls
cv/ ycmjason.com/
> cd cv
> ls
out.log
> cat out.log
Listening on 38186...
License
MIT