视频:https://www.bilibili.com/video/av17307986/
首先使用 Docker 账号在 https://beta.docker.com 注册预览计划,之后在 Docker 菜单登录该 Docker 账号。
之前使用 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
官方文档: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 相关命令,你必须在前面加上 DOCKER_ORCHESTRATOR=swarm
$ DOCKER_ORCHESTRATOR=swarm docker node ls
$ DOCKER_ORCHESTRATOR=swarm docker stack deploy --compose-file /path/to/docker-compose.yml mystack
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。