从私有Docker仓库将映像部署到AWS Elastic Beanstalk
我试图从它的私有仓库中提取Docker镜像,并在Dockerrun.aws.json的zip帮助下将其部署在AWS Elastic Beanstalk上。 它的内容是
{ "AWSEBDockerrunVersion": "1", "Authentication": { "Bucket": "my-bucket", "Key": "docker/.dockercfg" }, "Image": { "Name": "namespace/repo:tag", "Update": "true" }, "Ports": [ { "ContainerPort": "8080" } ] }
“我的水桶”是我的水桶在s3上的名字,它使用与我的BS环境相同的位置。 在关键设置的configuration是的结果
$ docker login
在docker2boot应用程序的terminal中调用。 然后将其复制到“my-bucket”中的“docker”文件夹中。 图像确实存在。 之后,我将dockerrunfile upload到.zip,然后部署
Activity execution failed, because: WARNING: Invalid auth configuration file
我错过了什么? 提前致谢
Docker已经将~/.dockercfg
的configuration文件path更新为~/.docker/config.json
。 他们还利用这个机会对configuration文件格式进行了重大更改。
然而,AWS仍然期望使用~/.dockercfg
( 请参阅文档中的文件名 ):
{ "https://index.docker.io/v1/": { "auth": "__auth__", "email": "__email__" } }
这与~/.docker/config.json
使用的新格式不兼容:
{ "auths": { "https://index.docker.io/v1/": { "auth": "__auth__", "email": "__email__" } } }
他们虽然很相似。 因此,如果您的Docker版本生成新格式,只需剥去auths
行及其相应的大括号即可。
- AWS Elastic Beanstalk中的多容器Dockerconfiguration版本错误
- AWS Elastic Beanstalk更改已加载目录的权限
- Elastic Beanstalk,Docker和持续集成
- 可以在AWS Elastic Beanstalk的Docker中设置–insecure-registry属性
- 如何设置运行Django的AWS Elastic Beanstalk Docker平台?
- Docker在Multicontainer Elastic Beanstalk中编写env_file
- 你如何在一个部署为弹性beanstalk工作的docker集装箱共享特权信息?
- 如何通过Elasticbeanstalkconfiguration文件(使用Docker)访问环境variables?
- Docker:ECS vs Beanstalk与Docker Cloud