Boot Hippo
In this section, we will focus on three steps:
- Boot Bindle
- Install WAGI
- Boot Hippo
Boot Bindle
First, set up a local installation of Bindle. This is where Hippo will publish revisions of your application.
- Download the latest release
of bindle. Extract the
bindle
andbindle-server
binaries and move them to a directory on your $PATH.
$ mv bindle bindle-server /usr/local/bin/
To start the compiled server, simply run bindle-server
. If you would like to
see the available options, use the --help
command.
By default, bindle-server
listens on port 8080. You can verify it is running
by issuing a request to Bindle:
$ bindle --server http://localhost:8080/v1 search
query = ""
strict = true
offset = 0
limit = 50
total = 0
more = false
yanked = false
invoices = []
Install WAGI
Hippo deploys applications using handlers following a Common Gateway Interface like approach called WebAssembly Gateway Interface (WAGI).
An incoming client HTTP request is sent to the handler, which lauches the application as a WebAssembly module and passes the HTTP request to it using the WAGI protocol. The output of the application - usually in the form of HTML - is then returned by the WebAssembly module, again using WAGI protocol, and the handler relays the output back to the client as an HTTP response.
There are two implementations of WAGI that can be used in Hippo:
WAGI binary
The WAGI binary is the default implementation of WAGI used in Hippo, it is a stand-alone binary that can be run on any system. It needs to be installed on the system where the Hippo is running.
Download the latest release of WAGI. Extract the WAGI binary and move it to a directory that is in your $PATH.
$ mv wagi /usr/local/bin/
No further configuration is necessary.
WAGI-dotnet
Hippo also includes a built in implementation of WAGI called WAGI-dotnet. This implenentation launches a handler as an HTTP listener with the Hippo server process. No additional installation is necessary but to use it the environment variable HIPPO_JOB_SCHEDULER
must be set to wagi-dotnet
in the environment where Hippo is running.
Boot Hippo
This guide explains how to set up your environment for running Hippo from source.
Hippo is a .NET web application, built with the Model-View-Controller (MVC) approach.
The front-end uses the Bootstrap design framework, which (along with some other packages) is managed via npm and gulp.
Clone the repository on GitHub.
System Requirements
Install the following development tools:
Building
To build the project, run:
$ dotnet restore
$ cd Hippo
$ npm run build
Then run Hippo, pointing at your local Bindle instance:
$ export BINDLE_URL=http://localhost:8080/v1
# If you want to use wagi-dotnet, set HIPPO_JOB_SCHEDULER variable
$ export HIPPO_JOB_SCHEDULER=wagi-dotnet
$ dotnet run
Open your web browser to https://localhost:5001 and accept the self-signed certificate to view the Hippo Web UI.
Once that’s done, proceed to Step 3: Deploy an Application