专栏首页康怀帅的专栏Docker CE for Mac v17.12 正式支持 k8s
原创

Docker CE for Mac v17.12 正式支持 k8s

相关文章

视频:https://www.bilibili.com/video/av17307986/

加入计划

首先使用 Docker 账号在 https://beta.docker.com 注册预览计划,之后在 Docker 菜单登录该 Docker 账号。

kubectl

之前使用 brew 安装了 kubectl 请先卸载。

$ brew remove kubernetes-cli

启用

官方文档:https://docs.docker.com/docker-for-mac/#kubernetes

在 Docker 设置中启用 k8s(具体图解请查看上方给出的官方文档)。

注意,需要从 gcr.io 拉取以下镜像,由于网络问题可能会失败。

REPOSITORY                                               TAG                                        IMAGE ID            CREATED             SIZE

gcr.io/google_containers/kube-apiserver-amd64            v1.8.2                                     6278a1092d08        7 weeks ago         194MB
gcr.io/google_containers/kube-controller-manager-amd64   v1.8.2                                     5eabb0eae58b        7 weeks ago         129MB
gcr.io/google_containers/kube-scheduler-amd64            v1.8.2                                     b48970f8473e        7 weeks ago         54.9MB
gcr.io/google_containers/kube-proxy-amd64                v1.8.2                                     88e2c85d3d02        7 weeks ago         93.1MB
gcr.io/google_containers/k8s-dns-sidecar-amd64           1.14.5                                     fed89e8b4248        2 months ago        41.8MB
gcr.io/google_containers/k8s-dns-kube-dns-amd64          1.14.5                                     512cd7425a73        2 months ago        49.4MB
gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64     1.14.5                                     459944ce8cc4        2 months ago        41.4MB
gcr.io/google_containers/etcd-amd64                      3.0.17                                     243830dae7dd        9 months ago        169MB
gcr.io/google_containers/pause-amd64                     3.0                                        99e59f495ffa        19 months ago       747kB

之前你可能使用了 minikube ,使用以下命令切换到 docker-for-desktop

$ kubectl config get-contexts

CURRENT   NAME                 CLUSTER                      AUTHINFO             NAMESPACE
          docker-for-desktop   docker-for-desktop-cluster   docker-for-desktop
*         minikube             minikube                     minikube

$ kubectl config use-context docker-for-desktop

查看集群详情

$ kubectl cluster-info

Kubernetes master is running at https://localhost:6443
KubeDNS is running at https://localhost:6443/api/v1/namespaces/kube-system/services/kube-dns/proxy

To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.

查看节点

$ kubectl get node

NAME                 STATUS    ROLES     AGE       VERSION
docker-for-desktop   Ready     master    8h        v1.8.2

使用 docker 命令部署 k8s 服务

官方文档:https://docs.docker.com/docker-for-mac/kubernetes/

新建 docker-compose.yml 文件。

version: '3.3'

services:
  web:
    build: web
    image: dockerdemos/lab-web
    volumes:
     - "./web/static:/static"
    ports:
     - "80:80"

  words:
    build: words
    image: dockerdemos/lab-words
    deploy:
      replicas: 5
      endpoint_mode: dnsrr
      resources:
        limits:
          memory: 16M
        reservations:
          memory: 16M

  db:
    build: db
    image: dockerdemos/lab-db

部署服务

$ docker stack deploy --compose-file docker-compose.yml mystack

查看服务详情

$ docker stack services mystack

# or

$ kubectl get services

指定命名空间

默认的命名空间为 default,使用以下命令自定义命名空间。

$ docker stack deploy --namespace my-app --compose-file docker-compose.yml mystack

Swarm mode 部署

如果你想使用 Swarm mode 相关命令,你必须在前面加上 DOCKER_ORCHESTRATOR=swarm

$ DOCKER_ORCHESTRATOR=swarm docker node ls

$ DOCKER_ORCHESTRATOR=swarm docker stack deploy --compose-file /path/to/docker-compose.yml mystack

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Docker 桌面版支持 kubernetes

    Docker for Mac v17.12 正式支持 k8s。 Docker for Windows v18.02-rc1 正式支持 k8s。 相关文章 Bet...

    康怀帅
  • Docker Swarm mode 详解

    使用 docker swarm Dcoker 内置的集群管理的工具,Docker CE 1.12+。注意与旧的 Docker Swarm 区分开来。 OS: C...

    康怀帅
  • Docker Cloud 简介

    Docker Cloud 是官方推出的构建、测试镜像,管理 Swarm mode,自动以镜像方式部署服务的地方。 构建镜像 和我们熟悉的 Dockr Hub 一...

    康怀帅
  • Docker系列学习文章 - 如何安装Docker(三)

    | 导语 前面介绍了关于容器和docker的知识,那么从这篇文章开始,正式进入实操,带大家手把手安装docker环境。

    宝哥@devops运维
  • 『中级篇』在centos上安装docker(九)

    IT故事会
  • Docker理论与实践(四)

    解析:docker run命令,-i是交互模式,-t是提供一个伪终端tty,--rm是在容器退出后自动移除容器。

    Tyan
  • 测试必会 | Docker 核心命令技能

    attach; build; commit; cp; diff; export; images; exec;

    louiezhou001
  • 【杂谈】您想要的docker环境来了!

    深度学习环境配置一直是大家学习AI的拦路虎,不管你是久经沙场的大佬,还是初出茅庐的小伙,相信你肯定被linux系统环境坑过。快到周末了,咱们就不聊高深莫测的算法...

    用户1508658
  • 单台docker主机部署和管理

    Portainer 是一个开源、轻量级 Docker 管理用户界面,基于 Docker API,可管理 Docker 主机或 Swarm 集群,支持最新版 Do...

    晴天Online
  • 手把手教你如何编排和容器化微服务

    在本人的微服务系列中,已经演示了各个spring cloud 微服务组件的使用,以及相关的示例微服务应用。在每次启动微服务和对微服务进行扩容、缩容都不方便,本文...

    DevOps时代

扫码关注云+社区

领取腾讯云代金券