我正在尝试使用Elastic Beanstalk部署我的Django服务器。
我的问题是,部署过程的一部分是从package.json中“ npm install”,然后执行webpack(npx webpack ..... --output main.js
)
如何在保持简便的部署过程(eb deploy
)且不将main.js
提交到存储库的情况下做到这一点?
答案 0 :(得分:2)
要执行此操作,您可能需要ebextensions
来配置Elastic Beanstalk环境。文档为here。
我最近在ElasticBeanstalk上部署了我的Symfony应用,该应用需要Yarn来执行webpack。
为此,我创建了一个.config
文件,在其中写入用于安装Yarn的命令,并编写另一个.config
文件以在每次部署时运行Yarn。所有.config
文件都位于项目根目录的.ebextensions
目录中。
commands:
01_install_node:
command: |
sudo curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
sudo yum -y install nodejs
02_install_yarn:
command: |
sudo wget https://dl.yarnpkg.com/rpm/yarn.repo -O /etc/yum.repos.d/yarn.repo
sudo yum -y install yarn
您可以使用container_commands键执行会影响 您的应用程序源代码。容器命令在 应用程序和Web服务器已设置,并且该应用程序 版本档案已被提取。
container_commands:
02_run_yarn:
command: |
yarn install
yarn run encore production