Skip to content

macOS 云原生开发环境的安装和简单使用

Published: at 00:00

前言

随着现代应用开发的快速发展,容器化技术和Kubernetes成为了关键的工具,为开发者提供了灵活、可扩展的部署和管理方式。本文旨在为读者提供安装和使用Docker、Colima、kubectl以及Minikube的详细指南,同时介绍常用的命令,使其能够轻松驾驭这些强大的工具。

Docker

简介

Docker是一种利用Google公司推出的Go语言开发的容器化技术,它基于Linux内核的cgroup、namespace以及OverlayFS等技术,实现对进程的封装和隔离,属于操作系统层面的虚拟化技术。通过这些技术,Docker能够将应用程序及其依赖项打包为独立的容器,使其在不同环境中具备一致性和可移植性。最初版本使用了LXC,但从0.7版本开始逐步移除LXC,转而采用自行开发的libcontainer。随着发展,从1.11版本开始,Docker进一步演进,采用了runC 和 containerd。

安装

# 不要加 --casks 安装GUI的 docker desktop, 它太重,需要账号登录和收费。
$ brew install docker

常用命令

# 查看版本号
$ docker --version

# 查看配置信息
$ docker info

# 显示所有容器
$ docker ps -al

# 显示所有镜像
$ docker images

# 删除某个镜像
$ docker rmi <image_id>

# 暂停某个容器
$ docker stop <image_name>

# 启动某个容器
$ docker start <image_name>

Docker-compose

简介

Docker Compose是一个用于定义和运行多容器Docker应用程序的工具。它允许通过一个单独的配置文件(通常称为docker-compose.yml)来定义应用程序的服务、网络和卷等元素,以及它们之间的关系和配置选项。通过使用Docker Compose,用户可以轻松地启动、停止和管理整个多容器应用程序。

安装

$ brew install docker-compose

配置插件

# 创建目录
$ mkdir -p ~/.docker/cli-plugins

# 设置软链接
$ ln -sfn $(brew --prefix)/opt/docker-compose/bin/docker-compose ~/.docker/cli-plugins/docker-compose

# 测试
$ docker compose version

常用命令

# 查看版本号
$ docker-compose version

Docker-buildx

简介

Docker Buildx是Docker官方提供的一个用于增强Docker镜像构建的工具,它在Docker CLI的基础上提供了一些额外的功能,使得构建和管理多平台和多架构的镜像更为方便。

安装 & 配置

# 安装 docker-buildx
$ brew instal docker-buildx

# 设置软链接
$ ln -sfn $(brew --prefix)/opt/docker-buildx/bin/docker-buildx ~/.docker/cli-plugins/docker-buildx

# 测试
$ docker buildx version

Colima

简介

Docker在macOS上通常需要依赖虚拟机技术,而自2020年Big Sur版本发布后,macOS引入了名为Virtualization Kit的虚拟机框架,使开发者能够创建Linux环境。尽管Docker Desktop利用这一框架,但其资源消耗较大,商业使用可能涉及购买费用。作为替代方案,Colima是一个令人满意的选择。Colima的名字源自”Container on Lima”,其中Lima是一个虚拟机工具,提供自动文件共享、端口转发以及containerd容器运行时。Colima实际上通过Lima启动虚拟机,并在其中使用containerd来管理容器。这一集成方案为macOS用户提供了更轻量、高效的容器化环境,使得在本地开发和测试容器应用变得更加便捷。

安装

$ brew install colima

常用命令

# 查看版本号
$ colima version

# 指定资源配置启动
$ colima start --cpu 4 --memory 4 --disk 10 --mount-type 9p

# 启动
$ colima start

# 停止
$ colima stop

# 查看版本号
$ colima version

# 查看状态
$ colima status

# 重启
$ colima restart

# 通过ssh连接到 Colima
$ colima ssh

# 显示所有实例
$ colima list

配置国内源

$ colima start --edit

# 找到docker那块信息,替换成如下
# Colima default behaviour: buildkit enabled
# Default: {}
docker:
  registry-mirrors:
    - https://registry.docker-cn.com
    - http://hub-mirror.c.163.com
    - https://docker.mirrors.ustc.edu.cn

kubectl

简介

kubectl是Kubernetes的命令行工具,用于与Kubernetes集群进行交互和管理。通过kubectl,用户可以执行各种操作,包括创建、管理和监视Kubernetes资源。

安装

$ brew install kubectl

常用命令

# 查看版本
$ kubectl version --client

minikube

简介

类似于kind,一个可以在本地运行k8s集群的工具,便于日常的开发工作。

安装

$ brew install minikube

# 启用metrics-server, minikube dashboard 需要
$ minikube addons enable metrics-server

使用

# 设置默认的driver
$ minikube config set driver docker

# 首次启动
$ minikube start --image-mirror-country='cn' --image-repository='auto' --alsologtostderr

# 如果失败,加上“--alsologtostderr”查看具体的错误信息
$ minikube start --image-mirror-country='cn' --image-repository='auto'

# 启动
$ minikube start

# 验证
$ kubectl get po -A
# 不能通过 stop 来关闭集群,会丢失创建好的环境信息
$ minikube stop

# 通过 pause & unpause 来暂停和取消暂停
$ minikube pause
$ minikube unpause
$ minikube status
$ minikube dashboard
$ minikube delete --all --purge

整体环境的启动和停止

启动

$ colima start
$ docker run minikube
$ minikube unpause

停止

$ minikube pause
$ docker stop minikube
$ colima stop

总结

本文档详细介绍了Docker、Colima、kubectl和Minikube的安装步骤以及常用命令。通过这些工具,大家能够快速上手容器化开发,构建轻量化的容器环境,并在本地进行灵活的K8S集群管理。