所以我试着用“docker secret”来做一个秘密。命令应该如下所示。
printf "Yes" | docker secret create sec -
比我试着用
redis
图像。
docker service create --name redis --secret sec redis:alpine
当我试图访问Redis服务并查看秘密码头时,它的工作方式就像魅力一样。
docker container exec $(docker ps --filter name=redis -q) cat /run/secrets/sec
但问题是,我试图在不删除服务的情况下从Redis中删除密钥。我只是服从命令。
docker container exec $(docker ps --filter name=redis -q) rm -rf /run/secrets/sec
rm: can't remove '/run/secrets/sec': Resource busy
所以我试图用stop命令停止服务。
docker container stop $(sudo docker ps --filter name=redis -q)
docker container exec $(sudo docker ps --filter name=redis -q) rm /run/secrets/sec
rm: can't remove '/run/secrets/my_secret_data': Resource busy
但它没有停止服务,我试图通过
docker service [COMMAND]
但我找不到码头服务站。
我也试过用
docker secret rm
,但出现此错误。
Error response from daemon: rpc error: code = InvalidArgument desc = secret 'sec' is in use by the following service: redis
我怎么能在不删除Docker服务的情况下删除Docker秘密?