目前我正在使用 wolkenkit ( https://www.wolkenkit.io/ ) 进行一个项目。 在我的机器上本地一切正常(它带有一个 docker 容器)。现在我想把它部署到 digital ocean 中更进一步。
在官方文档中有几行是关于分配 docker 机器的(https://docs.wolkenkit.io/1.0.1/reference/configuring-an-application/assigning-a-docker-machine/)。
是否有更详细的适合 digital ocean 的指南/建议/教程来解决这个主题?
最佳答案
免责声明:我是 wolkenkit 的开发者之一,所以请对我的回答持保留态度。
基本上,这首先取决于您如何创建机器:因为您基本上需要一台运行 Docker 的机器,所以最简单的方法是使用 docker-machine
来设置它。有关详细信息,请参阅 Docker documentation .
完成此操作后,您有两种选择:
您可以使用
docker-machine env
命令选择 DigitalOcean 机器是当前事件的机器,然后照常运行wolkenkit start
。由于所选机器存储在多个环境变量(例如DOCKER_HOST
)中,因此 wolkenkit CLI 工具使用这些信息来访问 Docker 主机。第二个选项是将新环境添加到您的 wolkenkit 应用程序的
package.json
文件中,如 here 所述。 .通常,您需要做的就是提供您创建的docker-machine
机器的名称。在这种情况下,wolkenkit CLI 将负责自动配置连接,因此您不必手动执行此操作。然后使用wolkenkit start --env production
启动您的应用程序,假设您的环境名为production
。
如果您不经常更换机器,第一种方法效果最好。如果您大部分时间都在本地工作,很少部署到云端,那么第二种是最好的。后一种方法还使您能够定义多个环境,例如 production
、staging
、test
……并部署到一个或另一个,具体取决于在命令行标志上。
请注意,您还可以使用 WOLKENKIT_ENV
环境变量来定义除 default
(这是 CLI 的默认值)之外的默认环境。
希望这有帮助:-)
PS:请注意,您的 Droplet 应至少有 1 GByte 的 RAM,因此最小的实例可能太小了。如果您使用 RAM 太少的 Droplet,Docker 容器似乎会按预期启动,但无法从外部访问它们。
PPS:另请注意,您需要为您的 Droplet 提供有效的证书,否则 CLI 将无法检测应用程序是否正在运行(因为它随后无法超越无效证书)。这可能会在 CLI 的 future 版本中更改。
关于javascript - 如何将 wolkenkit 应用程序部署到 digital ocean ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44987441/