Amazon web services AWS EB Deploy在部署后显示缺少Dockerrun.AWS.json
我试图将我的应用程序部署到Elastic Beanstalk(运行docker),但在部署过程中,它总是失败,如下所示:Amazon web services AWS EB Deploy在部署后显示缺少Dockerrun.AWS.json,amazon-web-services,docker,amazon-elastic-beanstalk,Amazon Web Services,Docker,Amazon Elastic Beanstalk,我试图将我的应用程序部署到Elastic Beanstalk(运行docker),但在部署过程中,它总是失败,如下所示: Activity execution failed, because: cat: /var/app/current/Dockerrun.aws.json: No such file or directory cat: /var/app/current/Dockerrun.aws.json: No such file or directory 2ba4cc7f9cb0a66
Activity execution failed, because: cat: /var/app/current/Dockerrun.aws.json: No such file or directory cat: /var/app/current/Dockerrun.aws.json: No such file or directory 2ba4cc7f9cb0a66db0ab1be8736ba96bffbb1c96a219cf5e888f99a964ae4f2a
据我所知,如果Dockerfile存在,则不需要Dockerrun.aws.josn文件,我看不出有任何理由需要它
我的Dockerfile如下所示:
FROM ubuntu:16.04
# create source directory
RUN rm -rf /var/www
RUN mkdir /var/www
# update and upgrade ubuntu
RUN apt-get update && apt-get upgrade -y
# install nginx
RUN apt-get install -y nginx
# install php 7
RUN apt-get install -y php7.0 php7.0-fpm php7.0-xml php7.0-curl
# install php mysql
RUN apt-get install -y php7.0-mysql
# install php mbstring
RUN apt-get install -y php7.0-mbstring
# install php mcrypt
RUN apt-get install -y php7.0-mcrypt
# install git
RUN apt-get install -y git
# install zip and unzip
RUN apt-get install -y zip unzip
ADD . /var/www
EXPOSE 80
CMD ["/usr/sbin/nginx", "-c", "/etc/nginx/nginx.conf"]
我们的应用程序源文件与Dockerfile位于同一目录中。
我以文件结构和dockerfile为例
我们使用相同的Dockerfile使用CodeBuild构建应用程序,它没有错误。在本地,我也可以毫无问题地构建该应用程序
任何帮助都将不胜感激。如下面的评论所述,问题可能不在缺少的
dockrun.aws.json
中,而是在其他方面
为了指出实际的问题,我必须通过ssh将其放入框中并检查日志。在我的情况下是这样的
eb-ssh
less/var/log/eb docker/containers/eb current app/unexpected-quit.log
如果有人有同样的问题-我联系了AWS供应商,发现这实际上不是一个错误,更像是一个信息性的问题。导致部署失败的是nginx conf的问题。