如何在不使用 Docker Hub 的情况下将我的应用程序部署到容器 OS?

How can I deploy my app to a container OS without using Docker Hub?

我想使用 Docker 和像 CoreOS 或最好是 RancherOS 这样的容器 OS 将我的应用程序部署到 DigitalOcean。我对 Docker 足够熟悉,可以构建图像。然而,这两个项目的大部分文档都在谈论使用 Docker Hub 部署容器。我不想使用 Docker Hub、AWS ECS 等

我能想到的部署我的应用程序的唯一其他方法是使用 docker export 和 SSH/SFTP 将我的应用程序放到我的 DigitalOcean Droplet 上。这是部署不在 Docker Hub 或类似服务上的 Docker 图像的首选方式吗?

顺便说一句,我看过 Rancher(应用程序)。我不是在寻找像 Kubernetes、Swarm、Rancher 等复杂的东西。我现在不关心扩展。我主要只是对使用 Docker 作为一种方便的方式来打包我的应用程序及其最小依赖性感兴趣,并使用容器 OS 来避免担心锁定一个成熟 OS 的巨大攻击面。 =27=]发行版。

您可以尝试在 publically 上可用的任何 Docker 注册表。

  • docker-hub [是其中之一]
  • gitlab.com 还提供 docker-注册表
  • 人工制品(jFrog)
  • 关系

这些很少 Docker 注册表提供商 - 如果您可以安装它们并使它们可以通过互联网访问 - 那么您可以轻松地在任何 public 云提供商(例如 Digital Ocean)中使用它们

您还可以使用 AWS 在免费层机器中安装和 运行 NEXUS,这将为您提供您自己的 Nexus 实例。

另一种方式 - 就像你说的

  • 从当前系统和
  • 导出Docker图像(tar格式)
  • 转移到tar获取环境,并
  • 然后导入本地 docker 图片。

如果您不想使用注册表,您应该按照以下步骤导出图像:

docker save <image name> > <image name>.tar

scp <image name>.tar <server-address>

然后在你的服务器上做,

docker load < <image name>.tar

这会将您的图像加载到服务器中。