This guide describes the echo-redis stack part which serves as the main key/value and queue to the stack.

Overview

echo-redis is built on top of redis and uses a configured and packaged version of its object code.

Running

In order to run echo-ui run the following in a console:

$ docker run \
    --name echo-redis \
    -p 6379:6379 \
    registry:5000/joola/echo-redis

Following the successful execution of the above, you should have a running echo-redis serving requests on port 6379.

You can also use the container as a client to a echo-redis server.

$ docker run \
    --name echo-redis-cli \
    --rm \
    --link echo-redis:redis \
    registry:5000/joola/echo-redis redis-cli -h redis set mykey "echo is easy"

$ docker run \
    --name echo-redis-cli \
    --rm \
    --link echo-redis:redis \
    registry:5000/joola/echo-redis redis-cli -h redis get mykey

Inspecting

Like all other Echo stack parts, echo-redis has a rich logging interface.

$ docker logs -f --tail 200 echo-redis

This will printout the runtime’s logs for your inspection, any warning or error will be clearly indicated in the log.

In case you wish to access the container’s runtime, you can docker exec into the container.

$ docker exec -it echo-redis bash

This will open a shell within the container and allow you to inspect it further.

Configuration

echo-redis configuration is based on simple configuration file shared via a docker volume:

$ docker run \
    --name echo-redis \
    -p 6379:6379 \
    -v /opt/joola/echo/config/redis/redis.conf:/usr/local/etc/redis/redis.conf \
    registry:5000/joola/echo-redis

Here's a short summary of main differences between echo-redis configuration and the main redis branch:

daemonize no
pidfile /var/run/redis/redis-server.pid
port 6379
bind 0.0.0.0
maxmemory 4194304000
maxmemory-policy noeviction