在docker-compose设置中调用redis-cli

我在设置中运行官方Redis镜像https://hub.docker.com/_/redis/docker-

compose

myredis:

image: redis

如何redis-cli在该图像上使用docker-compose 运行?

我尝试了以下操作,但未连接:

docker-compose run myredis redis-cli

> Could not connect to Redis at 127.0.0.1:6379: Connection refuse

图片的文档说我应该运行:

docker run -it --rm \

--link some-redis:redis \

redis \

sh -c 'exec redis-cli -h "$REDIS_PORT_6379_TCP_ADDR" -p "$REDIS_PORT_6379_TCP_PORT"'

这是docker-compose run什么意思?

回答:

那会覆盖默认值CMD [ "redis-server" ]:您试图在从未执行redis-

cli过的容器上运行redis-server

如此处所述,您还可以使用以下方法进行测试:

docker exec -it myredis redis-cli

如这个docker /

compose问题2123所述,从docker-

compose :

rcli:

image: redis:latest

links:

- redis

command: >

sh -c 'redis-cli -h redis '

这也应该起作用:

rcli:

image: redis:latest

links:

- redis

command: redis-cli -h redis

正如OPivoba确认的那样,最后一种形式有效。

然后:

docker-compose run rcli

ivoba还添加:

docker-compose run redis redis-cli -h redis在容器运行时也可以工作。

这样就不必声明一个单独的rcli容器。

以上是 在docker-compose设置中调用redis-cli 的全部内容, 来源链接: utcz.com/qa/429756.html

回到顶部