Docker

Quick guide into using Antidote's Docker images.

Overview

For easy installation and deployment, we recommand you use Antidote's Docker images.

AntidoteDB has several Docker images hosted in Docker Hub, you can also find its sources and Dockerfiles in the dedicated github repository.

The hub repository provides images for a few last Antidote releases (currently 0.2.0 / 0.1.1), and relative alpine slim images.

Requirements

Working recent version of Docker (1.12 and up recommended) (Please see Docker installation Guide.

Supported tags and respective Dockerfile links

The AntidoteDB images come in many flavors, each designed for a specific use case.

  • antidotedb:latest: the most recent AntidoteDB version (unstable).

  • antidotedb:stable: the most recent stable official release (recommended).

  • antidotedb:alpine: the most recent lightweight alpine release (stable).

  • antidotedb:<release>: Docker image for a specific version of AntidoteDB, official releases are described on [AntidoteDB Github repository][AntidoteDB-github-releases-link].

  • antidotedb:<release>-alpine: This variant, available for each official release, is recommended when final image size being as small as possible is desired. The main caveat to note is that it use musl libc instead of glibc and friends, so certain software might run into issues depending on the depth of their libs requirements. However, most software does not have an issue with this, so this variant is usually a very safe choice. See this Hacker News comment thread for more discussion of the issues that might arise and some pro/con comparisons of using Alpine-based images.

Supported tags and respective Dockefile github links:

Starting a local node

Start a local node with the command

docker run -d --name antidote -p "8087:8087" antidotedb/antidote:stable

This should fetch the Antidote image automatically. For updating to the latest version use the command docker pull antidotedb/antidote:stable.

Building the image locally

For building the Docker image on your local machine, use the following commands:

git clone https://github.com/AntidoteDB/docker-antidote
cd docker-antidote/v0.2.0
docker build -f Dockerfile -t antidotedb-local-build:0.2.0 .

Then you can run it using:

docker run -d --name antidote -p "8087:8087" antidotedb-local-build:0.2.0

Using the local node

Wait until Antidote is ready. The current log can be inspected with docker logs antidote. Wait until the log message Application antidote started on node 'antidote@127.0.0.1' appears.

Antidote should now be running on port 8087 on localhost.

Connect to the console

You can connect to the console of a local node typing the following:

docker exec -it antidote /opt/antidote/bin/env attach

Quick reference