【问题标题】:Deploy docker image on osx to Kubernetes将 osx 上的 docker 镜像部署到 Kubernetes
【发布时间】:2018-07-10 20:54:02
【问题描述】:

我想将一个简单的 docker 容器部署到我的 Kubernetes 集群。我正在使用 Docker for Mac(Edge 模式,因为它支持 Kubernetes),我不知道如何将我的图像推送到我的 Google Cloud Container Registry。

按照文档,我运行:

docker stack deploy --compose-file ./docker-compose.yml my-app

我得到了回报:

忽略不支持的选项:构建

此节点不是集群管理器。使用“docker swarm init”或“docker swarm join" 将此节点连接到 swarm 并重试

这是我的docker-compose.yml

version: '3'
services:
  web:
    build: ./
    environment:
      FLASK_APP: myApp
      FLASK_ENV: development
    command: flask run --host=0.0.0.0
    ports:
      - "9090:5000"
    volumes:
      - ./app:/app
volumes:
  data:
    driver: local

我做错了什么?

【问题讨论】:

  • docker stack ls 返回什么?

标签: docker kubernetes docker-compose


【解决方案1】:

要将 Docker 映像推送到远程 Docker 注册表,您需要执行以下步骤:

  1. 构建你的 Docker 镜像,例如,docker build .
  2. 用远程注册表的名称标记您的图像docker tag <image_name> <repository_name_or_address>/<image_name>
  3. 使用docker login <repository_name_or_address> 命令登录远程注册表
  4. 使用docker push <repository_name_or_address>/<image_name> 命令推送图片

不同类型的存储库的授权步骤可能不同。对于 Google Cloud Container Registry,您需要查看 this link。更多信息,也可以访问Docker官网link

将镜像推送到远程 Docker 注册表后,您可以在 Kubernetes 中使用它。最简单的命令是kubectl run <name_of_your_deployment> --image=<repository_name_or_address>/<image_name>

您可能需要配置 Kubernetes 以从您的私有存储库中提取图像。在这种情况下,请使用 here 发布的说明。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-09
    • 1970-01-01
    • 2019-03-29
    • 1970-01-01
    • 2020-08-19
    • 2015-08-04
    • 1970-01-01
    相关资源
    最近更新 更多