Bluemix上的Docker运行命令不允许正确设置环境variables

当我尝试创build一个泊坞窗容器

cf ic run -e AUTHORIZED_KEYS="`cat ~/.ssh/id_rsa.pub`" --name ssh-test -d busybox 

或者在设置环境variables之后

 docker run -e AUTHORIZED_KEYS="`cat ~/.ssh/id_rsa.pub`" --name ssh-test -d busybox 

我总是得到以下错误消息,在本地docker主机上运行命令时未报告:

 FATA[0001] Error response from daemon: Error creating container {'space_guid': u'guid', 'name': u'ssh-test', 'tenant_name': u'tenant', 'image': u'guid', 'security_groups': None, 'flavor': u'1', 'id': None, 'tenant': u'tenant'}: too many values to unpack 

我已经尝试了一些东西,触发错误信息的最简单方法是下面的命令,它包含两个等号( = )字符:

 cf ic run -e "AUTHORIZED_KEYS='ABC=='" --name ssh-test busybox 

我做错了什么,或者这个用例不被支持?

遵循这个Docker文档ENVvariables需要包含在双引号中https://docs.docker.com/reference/run/#env-environment-variables

这可能是为什么你的猫命令的输出是爆炸给“太多的值解包”。 可能在本地执行它是检查和“纠正”,但在networking打包/拆包省略双引号不支持。

无论如何,根据我上面链接的Docker文档,您可以尝试直接在Docker文件中添加公钥的值,在那里您可以像通过控制台一样指定ENVvariables:使用Dockerfile将允许您以更舒适的方式进行pipe理你的公钥的价值。