我已经在一个docker容器中运行了Redis。
docker run --rm -d --name "my_redis" redis
我想通过CLI访问它:
如果我运行命令docker exec -it my_redis redis-cli
,控制台会变得无响应,直到我离开容器(Ctrl + P,Ctrl + Q)
C:\Users\Andrzej>docker exec -it my_redis redis-cli
// nothing here until I go Ctrl + P, Ctrl + Q
exec attach failed: error on attach stdin: read escape sequence
C:\Users\Andrzej>
如果我运行docker exec -it my_redis sh
,然后从容器内部运行redis-cli
,它可以正常工作。
C:\Users\Andrzej>docker exec -it my_redis sh
# redis-cli
127.0.0.1:6379> set hello world
OK
127.0.0.1:6379> get hello
"world"
127.0.0.1:6379>
我的操作系统是Windows 10。
有没有办法修复docker exec -it my_redis redis-cli
的行为?
更新
当控制台失去响应并且我点击“向上箭头”键11次时,我可以进入Redis cli。 这是100%可重复的。这是什么魔法?