Calling redis-cli in docker-compose setup

That would override the default CMD [ "redis-server" ]: you are trying to run redis-cli on a container where the redis-server was never executed.

As mentioned here, you can also test with:

docker exec -it myredis redis-cli

From docker-compose, as mentioned in this docker/compose issue 2123:

rcli:
  image: redis:latest
  links:
    - redis
  command: >
     sh -c 'redis-cli -h redis '

This should also works:

rcli:
  image: redis:latest
  links:
    - redis
  command: redis-cli -h redis

As the OP ivoba confirms (in the comments), the last form works.
Then:

docker-compose run rcli

ivoba also adds:

docker-compose run redis redis-cli -h redis works also when the containers are running.
This way its not necessary to declare a separate rcli container.

Leave a Comment

tech