Tag: docker弹性beanstalk

你如何在一个部署为弹性beanstalk工作的docker集装箱共享特权信息?

我有一个文件包含特权信息(私人/公共密钥等),我不想提交给我的github存储库,但需要运行我的数据处理应用程序。 我正在使用弹性beanstalk将此应用程序作为Docker容器部署到EC2实例。 试图远离黑客攻击环境variables。 我已经看到,使用单独的数据容器和附加的数据卷可能是这样做的正确方法。 在这一点上,我还没有能够正确地工作。 我也在考虑使用etcd( https://coreos.com/blog/etcd-2.2/ )。 有兴趣了解其他开发人员如何执行此任务。

具有多个环境的Elastic Beanstalk和它们之间的URL路由

我正在尝试使用Amazon Web Services开始使用一些Docker微服务创build网站。 这些服务应该都位于相同的域,所以我想要的东西是这样的: domain.com/search指向我的search服务。 domain.com/auth指向我的身份validation服务。 domain.com/static指向一组静态文件。 domain.com指向/static/index.html (它实现了一个AngularJS应用程序)。 (注意:所提及的目录下的所有内容也应该指向特定的服务,即search/search/自动完成点)。 search和身份validation应该都具有相互独立的负载平衡。 这些服务分别在Python / Falcon中实现web-api,并且使用embedded在容器中的web服务器来设置容器以在端口80上进行监听。 我也想有search能够调用身份validation 。 我很困惑如何去做这件事。 我甚至不确定Elastic Bealstalk是使用的正确工具,所以我希望能指出正确的方向。 谢谢。

EFS卷未安装在Elastic Beanstalk上的Docker容器上

我无法在Elastic Beanstalk上运行的Docker容器上安装EFS卷。 以下是我在Dockerrun.aws.json : { "AWSEBDockerrunVersion": "1", "Volumes": [ { "HostDirectory": "/mydir", "ContainerDirectory": "/mydir" } ] } 以下是我在.ebextensions/storage-efs-mountfilesystem.config 。 其余与此相同。 option_settings: aws:elasticbeanstalk:application:environment: EFS_VOLUME_ID: 'fs-*****' EFS_MOUNT_DIR: '/mydir' 当我进入我的Elastic Beanstalk环境时,我看到卷被安装在主机上: [ec2-user@ip-****** app]$ df Filesystem 1K-blocks Used Available Use% Mounted on us-east-1a.fs-******.efs.us-east-1.amazonaws.com:/ 9007199254740992 0 9007199254740992 0% /mydir 但在我的Docker容器中,文件系统不是EFS: root@99046bd6a358:/reo# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/xvda1 […]

运行`eb local run`作为bash脚本的后台进程失败,出现各种错误(描述)

我试图写一个脚本: 运行docker-compose up -d编排一些服务(数据库等) 运行eb local run来启动Web容器。 将Web容器连接到由docker-compose创build的dockernetworking 我遇到的问题是与eb local run因为它似乎阻止,但不会作为后台进程工作。 以下是我的脚本示例: docker-compose up -d # Run backing services, postgres, redis, amqp, etc. eb local run > ./logs/eb.log 2>&1 & # Run web container with eb # Wait for container to be running spin="-\|/" i=0 until [ "$(docker ps -q –filter expose=8080)" ]; do i=$(( […]

AWS Elasticbeanstalk Docker错误部署

我一直在玩Dockerrun.aws.json文件,我无法弄清楚它应该如何工作。 我是AWS Dockerconfiguration的新手,只需要社区帮助。 每次我部署到Docker镜像Elastic Beanstalk我得到这个错误。 [2017-12-19T19:38:40.877Z] ERROR [31251] : Command CMD-AppDeploy failed! [2017-12-19T19:38:40.879Z] INFO [31251] : Command processor returning results: {"status":"FAILURE","api_version":"1.0","results":[{"status":"FAILURE","msg":"(TRUNCATED)…spec \":\": invalid volume specification: ':'.\nSee 'docker run –help'.\nFailed to run Docker container: docker: Error response from daemon: invalid volume spec \":\": invalid volume specification: ':'.\nSee 'docker run –help'.. Check snapshot logs for details. \nHook […]

docker和elastic beanstalk容器意外停止,权限被拒绝

我试图扩展这个Docker镜像 ,这个镜像至less在Docker Hub上是成功的,并且这个镜像的一部分包含一个叫做play的用户,它拥有一个名为/ home / play / Code的目录,拥有755个权限。 我在mac上使用boot2docker 这是我的泊坞窗文件在本地 FROM ir1sh/dockeractivator MAINTAINER Mark Moore EXPOSE 9000 build立好,当我跑 docker run –rm -it -v "/my/local/dir:/home/play/Code" -p 9000:9000 300b01a6199c 容器启动正确,我得到一个开始于/ home / play / Code的用户root的会话。 如果我添加了-u玩commade,我得到一个与玩家的会话,而不是在同一个目录。 现在,如果我用它们的cli工具将该容器推送到弹性beanstalk,我得到以下错误 输出:[CMD-AppDeploy / AppDeployStage0 / AppDeployPreHook / 04run.sh]命令失败,错误代码为1:/opt/elasticbeanstalk/hooks/appdeploy/pre/04run.sh b07ae15d619ad90441f6f410a31a7d51885151c92cd8675c5d8e47f63b43dd95启动后Docker容器意外退出:Docker容器在Sun上意外退出12月21日13:36:06 UTC 2014: 检查快照日志的详细信息.. 日志不是很有启发性 现在根据另一个build议,我没有在我的docker文件中的CMD或ENTRYPOINT,所以我添加这些。 FROM ir1sh/dockeractivator MAINTAINER Mark Moore EXPOSE 9000 […]

通过CLI部署命令与Dockerrun.aws.json部署到elasticbeanstalk

我运行一个elasticbeanstalk应用程序,有多个环境。 这个特定的应用程序托pipedocker容器,主持一个Web服务。 要将新版本的应用程序上传和部署到其中一个环境中,可以通过Web客户端并单击“上传和部署”,然后从文件选项中select我的最新Dockerrun.aws.json文件,该文件引用最新版本的私人托pipe容器。 上传和部署工作正常,没有问题。 为了让自己和其他人更容易部署,我希望能够使用CLI来上传和部署Dockerrun.aws.json文件。 如果我使用cli eb deploy命令而没有任何特殊的configuration,那么正常的压缩整个应用程序并将其发送到主机的过程就会发生并失败(不能推断出它只需要读取Dockerrun.aws.json文件)。 我发现了一个关于使用.elasticbeanstalk / config.yml文件控制上传内容的文档。 使用这个语法: deploy: artifact: Dockerrun.aws.json 该文件已上传并实际成功部署到第一批实例,然后始终无法部署到第二组实例。 失败错误的味道:“集装箱意外退出…” 任何人都可以解释,或提供使用CLI的规范方法的部署单个docker集装箱应用程序的链接?

从Docker Elastic Beanstalk容器中获取Elasticache地址

我正在尝试有弹性beanstalk自动提供一个elasticache实例。 我想弄清楚如何我可以在我的docker环境中在运行时访问caching实例的地址。 我正在运行python(在gevent上)。 这是我的.ebextensions中的configuration文件: Resources: sslSecurityGroupIngress: Type: AWS::EC2::SecurityGroupIngress Properties: GroupName: {Ref : AWSEBSecurityGroup} IpProtocol: tcp ToPort: 443 FromPort: 443 CidrIp: 0.0.0.0/0 MyCacheSecurityGroup: Type: "AWS::EC2::SecurityGroup" Properties: GroupDescription: "Lock cache down to webserver access only" SecurityGroupIngress : – IpProtocol : "tcp" FromPort : Fn::GetOptionSetting: OptionName : "CachePort" DefaultValue: "6379" ToPort : Fn::GetOptionSetting: OptionName : "CachePort" DefaultValue: "6379" […]

如何将AWS中的Docker容器连接到RDS

我怎样才能将在简单的EC2实例上运行的Docker容器(odoo)或通过EB链接到AWS中的RDS? 我试图加载一个自定义的configuration文件与服务器的位置,但没有奏效。 在EB中,我使用postgres DB创build了一个应用程序,成功部署了我的docker.aws.json但无法连接到应用程序的Web界面。 当我检查容器的docker日志,它说,一切正常开始,但预计在本地主机上的数据库。 所以就像我说我的问题是我怎么能告诉docker容器 – –link到RDS,而不是其他docker容器àla – –link db:db ?

使用Docker的单容器应用程序的ECS还是EB?

我部署了一个带有Docker的单容器SailsJS应用程序(图像大小约为597.4 MB),并将其连接到ElasticBeanstalk。 但是,由于ECS是为Docker构build的,所以使用EB可能会更好吗?