gpt4 book ai didi

javascript - MEAN 堆栈 docker 容器在 OS X 和 DigitalOcean 上具有相同配置的最简单设置是什么?

转载 作者:IT老高 更新时间:2023-10-28 21:38:43 27 4
gpt4 key购买 nike

我正在玩一个 MEAN javascript 项目。(mongoDB + Angular +sails.js + node.js)由于我经常离线,我想保持我的开发环境在 docker 容器中运行,在 OS X 笔记本电脑上,使用 boot2docker。

“生产”(不是实际生产,只是我部署到的某个地方以向 friend 展示)是一个 Digital Ocean droplet,运行 Ubuntu 作为主机,希望是同一个 docker 容器。

我希望环境不会经常变化,并且我可以继续使用 git push/pull 来推送代码更改。

除了我上面描述的以外,我还需要其他什么吗?我是否需要 Vagrant,例如部署该 docker 容器,或者这是一种矫枉过正的做法?docker 能否指定我所有的需求,即 node.js、sails 等的正确版本?是否有现成的容器可以重复使用或修改,而不是从头开始?

最佳答案

回答您的问题:

除了我上面描述的以外,我还需要什么吗?

你的描述听起来很有道理。但请记住,您不想使用一个 docker 容器,而是每个服务一个容器。这意味着:一个容器运行 mongo,一个容器运行节点,以此类推。这是 Docker 的最佳实践。

我是否需要 Vagrant,例如部署该 docker 容器,或者这是否是一种矫枉过正?

听起来您相当简单的设置不需要 Vagrant。您可以使用 Dockerfiles 来构建安装了您需要的所有东西的镜像。见 Dockerfile ReferenceDockerfile best Practices .

docker 能否指定我的所有需求,即 node.js、sails 等的正确版本?

是的,每个 Docker 镜像都有特定版本的服务,将在容器内运行。这就是使用容器的 Gist 之一。

是否有现成的容器可以重复使用或修改,而不是从头开始?

是的,Docker Hub 上有很多现成的容器。 .在编写 Dockerfile 以安装除 Docker Hub 上的图像中提供的内容之外的任何内容时,请使用这些图像作为基础。

另外,请查看 Volumes弄清楚如何在开发中处理源代码。

关于javascript - MEAN 堆栈 docker 容器在 OS X 和 DigitalOcean 上具有相同配置的最简单设置是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28942840/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com