Installing Kapow!¶
Kapow! has a reference implementation in Go
that is under active
development right now. If you want to start using Kapow! you can choose from
several options.
Download and Install a Binary¶
Binaries for several platforms are available from the releases section, visit the latest release page and download the binary corresponding to the platfom and architecture you want to install Kapow! in.
GNU/Linux¶
Install the downloaded binary using the following command as a privileged user.
# install kapow_0.5.2_linux_amd64 /usr/local/bin/kapow
macOS¶
Install the downloaded binary using the following command as a privileged user.
# install kapow_0.5.2_darwin_amd64 /usr/local/bin/kapow
Windows®¶
Unzip the downloaded zipfile and move kapow.exe
to a directory of your choice;
then update the system PATH
variable to include that directory.
Note that the zipfile also includes the LICENSE.
Install the package with go get
¶
If you already have installed and configured the go runtime in the host where you want to run Kapow!, simply run:
$ go get -v github.com/BBVA/kapow
Note that Kapow! leverages Go modules, so you can target specific releases:
$ GO111MODULE=on go get -v github.com/BBVA/kapow@v0.5.2 go: finding github.com v0.5.2 go: finding github.com/BBVA v0.5.2 go: finding github.com/BBVA/kapow v0.5.2 go: downloading github.com/BBVA/kapow v0.5.2 go: extracting github.com/BBVA/kapow v0.5.2 github.com/google/shlex github.com/google/uuid github.com/spf13/pflag github.com/BBVA/kapow/internal/server/httperror github.com/BBVA/kapow/internal/http github.com/BBVA/kapow/internal/server/model github.com/BBVA/kapow/internal/client github.com/gorilla/mux github.com/BBVA/kapow/internal/server/user/spawn github.com/BBVA/kapow/internal/server/data github.com/BBVA/kapow/internal/server/user/mux github.com/BBVA/kapow/internal/server/user github.com/BBVA/kapow/internal/server/control github.com/spf13/cobra github.com/BBVA/kapow/internal/server github.com/BBVA/kapow/internal/cmd github.com/BBVA/kapow
Include Kapow! in your Container Image¶
If you want to include Kapow! in a Docker
image, you can add the binary
directly from the releases section. Below is an example Dockerfile
that
includes Kapow!.
FROM debian:stable-slim ADD https://github.com/BBVA/kapow/releases/download/v0.5.2/kapow_0.5.2_linux_amd64 /usr/bin/kapow RUN chmod 755 /usr/bin/kapow ENTRYPOINT ["/usr/bin/kapow"]
If the container is intended for running the server and you want to dinamically
configure it, remember to include a --control-bind
param with an external
bind address (e.g., 0.0.0.0
) and to map all the needed ports in order to get
access to the control interface.
After building the image you can run the container with:
$ docker run --rm -i -p 8080:8080 -v $(pwd)/whatever.pow:/opt/whatever.pow kapow:latest server /opt/whatever.pow
With the -v
parameter we map a local file into the container’s filesystem so
we can use it to configure our Kapow! server on startup.