我有一个简单的AngularJS应用程序。 后端可以像一个服务(外部API)对待,所以根本不需要服务器端。 我想运行在docker上,但是,我不知道这里最好的做法是什么。 我期望达到的是以下几点:
真正的问题是,据我所知,开发的docker应该基于nodejs与安装量和一切..但是,生产docker应该是超级简单的nginx服务器,提供静态内容。 所以我可能会得到一个2个独立的docker使用相同的代码库。 不知道这是否正确的路要走..
任何人都可以在这个话题上谈一谈? 谢谢
你的想法似乎没问题。 我通常创建一个bash脚本(对我来说足够灵活),根据需求(dev&prod)部署不同的环境。
假定创建了一个bash脚本deployApp.sh
sh deployApp.sh `{dev or prod}`
因此,您也可以根据自己的环境即时创建(或切换)Dockerfile,并使用此Dockerfile构建您的应用程序。 所以你可以管理你的prod环境需求(只有用webpack创建的包才能部署到nginx等)你需要什么。
有关创建deployApp.sh的示例:
webpack `{if other required parameters here}` #created bundle.js etc. #After webpack operations , choose Dockerfile for prod or dev : #./prod/Dockerfile , ./dev/Dockerfile #check if first parameter is prod or dev docker build -f ./prod/Dockerfile #this will build nginx based container #and copy needed files&folders
根据你的想法,这只是一种方法,我也是这样使用的。 您只需创建一次该设置。 你也可以申请另一个项目如果是合适的。