映射Dockerrun.aws.json中的node_modules以在container_command中使用

我想知道在Dockerrun.aws.json中进行卷映射的正确path结构,以便我可以在“/ opt / elasticbeanstalk / hooks / appdeploy / post”bash文件中引用已安装的node_modules。 总之,我试图在部署后运行Sequelize迁移,似乎无法将node_modulespath公开到主机环境。

我的Dockerfile

FROM node:6.10 ENV USER root RUN mkdir -p /install/ ENV PATH /install/node_modules/.bin:$PATH ENV NODE_PATH /install/node_modules/ COPY ./package.json /install/package.json RUN cd install; npm install RUN mkdir -p /usr/src/app WORKDIR /usr/src/app COPY . /usr/src/app RUN groupadd -r nodejs && useradd -m -r -g nodejs nodejs USER nodejs EXPOSE 3000 CMD [ "npm", "start" ] 

Dockerrun.aws.json

 { "AWSEBDockerrunVersion": "1", "Logging": "/var/log/pm2", "Volumes": [ { "HostDirectory": "/var/app/current", "ContainerDirectory": "/usr/src/app" }, { "HostDirectory": "/var/app/current/node_modules", "ContainerDirectory": "/install" } ] } 

这工作正常,没有“/ var / app / current / node_modules”映射但失败(我猜,因为/安装目录是无效的)

谢谢,史蒂夫