轻量级 K8S 环境 安装minikube
将用户添加到 Docker 组: 若要允许用户在不使用 sudo 的情况下运行 Docker 命令,可以将用户添加到 docker 组。尝试上述步骤后,你应该能够在不遇到 “permission denied” 错误的情况下运行 Docker 命令。请记住,如果将用户添加到 docker 组,可能需要注销并重新登录以使组更改生效。添加用户到 docker 组后,可能需要注销并重新登录以使更改生效。
文章目录
操作系统
本文采用Debian 12系统(win10+vmware Debian 12虚拟机)
Docker
参考文档docker-ce
Docker CE 镜像源站
使用官方安装脚本自动安装 (仅适用于公网环境)
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
docker version
安装校验
root@xxx:$ docker version
Client:
Version: 17.03.0-ce
API version: 1.26
Go version: go1.7.5
Git commit: 3a232c8
Built: Tue Feb 28 07:52:04 2017
OS/Arch: linux/amd64
Server:
Version: 17.03.0-ce
API version: 1.26 (minimum version 1.12)
Go version: go1.7.5
Git commit: 3a232c8
Built: Tue Feb 28 07:52:04 2017
OS/Arch: linux/amd64
Experimental: false
Docker代理
touch /etc/docker/daemon.json
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://bjtzu1jb.mirror.aliyuncs.com",
"http://f1361db2.m.daocloud.io",
"https://hub-mirror.c.163.com",
"https://docker.mirrors.ustc.edu.cn",
"https://reg-mirror.qiniu.com",
"https://dockerhub.azk8s.cn",
"https://registry.docker-cn.com"
]
}
EOF
# 重启docker
sudo systemctl daemon-reload
sudo systemctl restart docker
docker permission denied while trying to connect to the Docker daemon socket
将用户添加到 Docker 组: 若要允许用户在不使用 sudo 的情况下运行 Docker 命令,可以将用户添加到 docker 组。首先检查 docker 组是否存在:
grep docker /etc/group
如果组存在,将用户添加到该组:
sudo usermod -aG docker $USER
添加用户到 docker 组后,可能需要注销并重新登录以使更改生效。
重启 Docker 服务: 如果问题仍然存在,尝试重启 Docker 服务:
sudo service docker restart
或
sudo systemctl restart docker
尝试上述步骤后,你应该能够在不遇到 “permission denied” 错误的情况下运行 Docker 命令。
请记住,如果将用户添加到 docker 组,可能需要注销并重新登录以使组更改生效。
minikube
minikube
是一个工具, 能让你在本地运行 Kubernetes。
minikube
在你的个人计算机(包括 Windows、macOS 和 Linux PC)上运行一个一体化(all-in-one) 或多节点的本地 Kubernetes 集群,以便你来尝试 Kubernetes 或者开展每天的开发工作。
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube_latest_amd64.deb
sudo dpkg -i minikube_latest_amd64.deb
启动的选项有很多,如果可以直接minikube start
就直接启动就行,无须添加过多选项。
minikube start
# 将用户添加到 Docker 组,就不需要force选项
minikube start --force --driver=docker
# 将用户添加到 Docker 组,就不需要force选项
minikube start --force --driver=docker --image-mirror-country=CN
# 启动命令
minikube start --kubernetes-version='1.28' --registry-mirror=https://docker.mirrors.ustc.edu.cn --image-mirror-country='cn'
minikube停止、删除、查看pod信息
# 停止
minikube stop
# 删除
minikube delete
# 查看pod信息
minikube kubectl -- get pods -A
配置别名
也可在~/.bashrc
文件配置别名,编辑文件vi ~/.bashrc
,使其生效source ~/.bashrc
alias k="minikube kubectl --"
alias mini="minikube"
此时,可用k get pod -n kube-system
kubectl工具
Kubernetes 命令行工具 kubectl, 让你可以对 Kubernetes 集群运行命令。 你可以使用 kubectl 来部署应用、监测和管理集群资源以及查看日志。
安装kubectl
# 下载
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
# 安装
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
# 查看pod
kubectl get pod -o wide -n kube-system
minikube dashboard 面板
dashboard面板插件,需要metrics-server插件支持。命令minikube addons enable metrics-server
# 启用metrics-server插件
minikube addons enable metrics-server
# 启用dashboard插件
minikube addons enable dashboard
# 开启面板
minikube dashboard
返回的url http://127.0.0.1:42005/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/ 为访问地址,但此地址只是容器代理出来的地址,只能本机内网访问,要想在外网访问 dashboard 的UI 界面,需要使用kubectl做一层代理。
kubectl proxy --port=端口号(一个没有被占用的就可以) --address='机器内网地址' --accept-hosts='^.*' &
以上命令昨晚代理后,访问 http://机器公网IP:上面配置的端口号/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/ 就可以访问到dashboard 的UI 界面
启动代理,在win10浏览器可以访问
kubectl proxy --port=8083 --address='0.0.0.0' --accept-hosts='^.*' &
云服务器外部访问要添加访问规则
路径为,云服务器——网络与安全——安全组——访问规则
minikube 基本命令
查看docker信息需要登录到 minikube 环境查看。
minikube 提供并管理针对开发工作流程优化的本地 Kubernetes 集群。
基本命令:
start 启动本地 Kubernetes 集群
status 获取本地 Kubernetes 集群状态
stop 停止正在运行的本地 Kubernetes 集群
delete 删除本地的 Kubernetes 集群
dashboard 访问在 minikube 集群中运行的 kubernetes dashboard
pause 暂停 Kubernetes
unpause 恢复 Kubernetes
镜像命令
docker-env 提供将终端的 docker-cli 指向 minikube 内部 Docker Engine 的说明。(用于直接在 minikube 内构建 docker 镜像)
podman-env 配置环境以使用 minikube's Podman service
cache 管理 images 缓存
image 管理 images
配置和管理命令:
addons 启用或禁用 minikube 插件
config 修改持久配置值
profile 获取或列出当前配置文件(集群)
update-context IP或端口更改的情况下更新 kubeconfig 配置文件
网络和连接命令:
service 返回用于连接到 service 的 URL
tunnel 连接到 LoadBalancer 服务
高级命令:
mount 将指定的目录挂载到 minikube
ssh 登录到 minikube 环境(用于调试)
kubectl 运行与集群版本匹配的 kubectl 二进制文件
node 添加,删除或者列出其他的节点
cp 将指定的文件复制到 minikube
故障排除命令
ssh-key 检索指定节点的 ssh 密钥路径
ssh-host 检索指定节点的 ssh 主机密钥
ip 检索指定节点的IP地址
logs 返回用于调试本地 Kubernetes 集群的日志
update-check 打印当前版本和最新版本
version 打印 minikube 版本
options 显示全局命令行选项列表 (应用于所有命令)。
Other Commands:
completion 生成命令补全的 shell 脚本
license 将依赖项的 licenses 输出到一个目录
参考资料
Minikube start中文
minikube start
阿里云CentOS 7 安装部署 minikube且外网能访问dashboard
错误docker permission denied while trying to connect to the Docker daemon socket
minikube start 可选项
Linux如何创建用户 adduser
更多推荐
所有评论(0)