Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 使用beanstalk从正在运行的docker容器中装载主机EC2实例上的目录_Amazon Web Services_Docker_Amazon Ec2_Amazon Elastic Beanstalk - Fatal编程技术网

Amazon web services 使用beanstalk从正在运行的docker容器中装载主机EC2实例上的目录

Amazon web services 使用beanstalk从正在运行的docker容器中装载主机EC2实例上的目录,amazon-web-services,docker,amazon-ec2,amazon-elastic-beanstalk,Amazon Web Services,Docker,Amazon Ec2,Amazon Elastic Beanstalk,我被困在这上面太久了 我使用elastic beanstalk运行docker容器,并将其作为Dockerfile上载。主机EC2实例上有一个已格式化的已装入AWS卷。我想在这个EC2主机上运行的docker容器中装载这个卷 我可以通过以下方式在本地(无AWS)实现我想要的目标: docker run-v/host\u dir:/container\u dir-d--name container\u name image\u name 但是,在使用elastic beanstalk时,我无法显式

我被困在这上面太久了

我使用elastic beanstalk运行docker容器,并将其作为Dockerfile上载。主机EC2实例上有一个已格式化的已装入AWS卷。我想在这个EC2主机上运行的docker容器中装载这个卷

我可以通过以下方式在本地(无AWS)实现我想要的目标:

docker run-v/host\u dir:/container\u dir-d--name container\u name image\u name

但是,在使用elastic beanstalk时,我无法显式指定docker run的参数。相反,我必须使用Dockerrn.aws.json文件,该文件与Dockerfile一起上载。这是我认为应该在这个文件中的内容:

{
  "AWSEBDockerrunVersion": "1",
    "Volumes": [{
      "HostDirectory": "/host_dir",
      "ContainerDirectory": "/container_dir"
  }]
}

但是,它甚至没有在docker容器上创建
container\u dir
目录,更不用说将其映射到
host\u dir
。任何帮助都将不胜感激

我自己找到了解决办法

如果AWS卷是在启动后装入的,则在EC2上运行的docker守护程序看不到该卷。我进入EC2实例并重新启动docker守护进程
服务docker restart
。docker容器然后根据需要装载目录