As Beekeeper is packaged in a Docker container, to install it, you must have docker installed and running (install docker) and then run:
You can start Beekeeper without configuration with:
sudo docker run --name beekeeper -e ${ACCESS_ID}_API_KEY=API_KEY_FOR_${ACCESS_ID} -d -p 3000:3000 -v /var/run:/var/run docker-registry.gopex.be:5000/gopex/beekeeper:0.4.0General parameters are handled through Docker:
- Name
--name beekeeper- Name given to the container running Beekeeper, optional but make life easier. - Api key
-e ${ACCESS_ID}_API_KEY- As from version 0.2.0, you must use the authentication mechanism. To do so, give an environment variable with the secret key to use for a given access id. For example, if my access id is 1337, the name would be1337_API_KEY. - Daemon mode
-d- Make the container launched to run as a daemon. Remove the-dflag to see Beekeeper's logs as STDOUT or use thedocker logs -fcommand. - Port
-p 3000:3000- the port to open, Beekeeper listen to port 3000 by default. - Docker socket
-v /var/run:/var/run- will mount your local daemon host socket to beekeeper container.
Beekeeper specific configuration are handled through Docker via environment variables:
- Docker host
-e DOCKER_HOST_URL=tcp://DOCKER_HOST_IP:DOCKER_HOST_PORT- Will connect Beekeeper to the given docker host url via TCP. This will override any Docker socket usage, meaning mounting a Docker socket is not needed anymore. You'll need to (bind docker daemon to a network interface) to use this feature. Default is to use docker unix socket. - Docker host public
-e DOCKER_HOST_PUBLIC_URL=DOCKER_HOST_PUBLIC_IP- Will be used by Beekeeper when replying to from the complete public url of created bees. Default isDOCKER_HOST_URLor127.0.0.1if using Docker on a unix socket. - Beekeeper bind
-e BIND=unix:///var/run/beekeeper_puma.sock- Will configure Beekeeper to listen on a specific unix socket. Use you also use it to configure Beekeeper to listen on a specific network interface/port but be careful as the default Beekeeper image only expose port 3000. Default totcp://0.0.0.0:3000 - Beekeeper concurrency
-e CONCURRENCY=4- Will set the Beekeeper concurrency level to 4. Default is 2. - Beekeeper maximum threads
-e MAX_THREADS=20- Will set Beekeeper maximum threads per concurrency to 20. Default is 10. - Rails environment
-e RAILS_ENV=production- Will set rails environment to production. Default is development. - Beekeeper registry password
BEEKEEPER_REGISTRY_PASSWORD=PASSWORD- Will be used by Beekeeper to handle registry when specified. Beekeeper will always use credentials to call private registry for the moment.
As Beekeeper is intended to only manage its own set of Docker container, we will call them bee from now. To achieve that, Beekeeper will label all container with a custom label and filter container that way.
GET /info/ping(.json)
GET /info/status(.json)
GET /info/version(.json)
GET /info/docker_version(.json)
GET /info/docker(.json)
GET /bees/:id(.json)
GET /bees(.json)
POST /bees(.json)
- container
Hash:- image
String- Image to use, must be complete if you want to use a private registry as Docker hub is used by default. - registry
String- If your image is not hosted publicly on the docker hub, you must specify the registry using this parameter. Credentials used to connect to the hub will be beekeeper:$BEEKEEPER_REGISTRY_PASSWORD. - entrypoint
String (optional)- Entry point to use when starting the container. This will overwrite anyENTRYPOINTdefined in the image used. - parameters
[String] (optional)- Parameters used by the entry point when starting the container. This will overwrite anyCMDdefined in the image used. - ports
[String] (optional)- Ports to expose when starting the container. This port must be exposed in the image as Beekeeper will not expose port dynamically.
- image
DELETE /bees/:id(.json)