我正在尝试通过docker在django中创建一个应用程序,我希望只使用一个存储库将后端(django)容器与前端(node,react)容器分开。
我想从django容器运行节点命令(例如:npm init并在主文件夹中创建package.json)。
这是一个很好的实践吗?
如果是,我该怎么做?
提前致谢。
答案 0 :(得分:0)
如果您只需要Nodejs进行构建,您应该只有一个docker镜像用于构建(如果需要,部署)静态文件,然后使用完整的不同docker设置来实现生产环境。
您可以查看https://github.com/dkarchmer/django-aws-template(免责声明,我是开发人员)查看示例。不幸的是,该项目尚未经过全面测试和记录,但展示了我如何处理Django之外的静态文件(它确实模仿了我在生产中所做的事情 - 只是没有经过全面测试)。
您将看到我仅用于构建webpack类型项目(使用gulp)的顶级docker镜像,并实际将其直接释放到S3。顶级index.html文件被复制到django templates目录,被其他django模板用作基本模板(如果你的前端100%独立于Django,你可能不需要这个)。但IMO,我发现它很有用。例如,我使用常规django(django-allauth)执行所有身份验证部分。
你的问题是公开的(不是一个很好的方式来询问),但我希望上面的链接能为你提供一些如何实现你需要的想法。