• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

    minikube部署Go应用小结

    发布者: 福建二哥 | 发布时间: 2025-8-14 10:38| 查看数: 40| 评论数: 0|帖子模式

    本篇文章基于VM Centos7 环境部署Go应用

    前置准备工作

    1.安装 minikube、kubectl
    2.配置docker镜像源,配置内部仓库方便pod启动。

    安装minikube
    1. curl -LO https://github.com/kubernetes/minikube/releases/latest/download/minikube-linux-amd64
    2. sudo install minikube-linux-amd64 /usr/local/bin/minikube && rm minikube-linux-amd64
    3. // 执行测试
    4. minikube version
    复制代码
    安装kubectl
    1. curl -LO https://dl.k8s.io/release/v1.32.0/bin/linux/amd64/kubectl
    2. sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
    3. // 执行测试
    4. kubectl version --client
    复制代码
    Docker相关配置


    配置docker镜像源

    配置docker镜像源提高docker拉取镜像速度
    1. vi /etc/docker/daemon.json
    复制代码
    1. {
    2.     "registry-mirrors": [
    3.         "https://docker.m.daocloud.io",
    4.         "https://docker.imgdb.de",
    5.         "https://docker-0.unsee.tech",
    6.         "https://docker.hlmirror.com"
    7.     ]
    8. }
    复制代码
    配置私有仓库

    避免本地已有镜像但是还是从远程拉取
    1. docker pull registry
    2. docker images registry
    3. docker run -d --name registry -p 5000:5000 -v /opt/registry:/var/lib/registry registry
    复制代码
    修改私有镜像tag 以指定上传的仓库
    1. docker tag go-web:latest localhost:5000/go-web:latest
    2. docker push localhost:5000/go-web:latest
    复制代码
    上传成功后可以查看推到仓库的镜像
    1. curl localhost:5000/v2/_catalog
    复制代码
    将私有仓库配置到docker配置文件中
    1. {"insecure-registries":["私有仓库地址:5000"]}
    复制代码
    配置完重启docker
    1. systemctl restart docker
    复制代码
    启动minikube

    启动这一步问题很多,注意携带的参数
    1. minikube start --driver=docker --insecure-registry="私有仓库地址:5000" --force
    2. // --image-mirror-country='cn' 不加这个参数,无法从私有仓库拉取镜像
    复制代码
    部署项目

    好的现在minikube已经启动,现在我们要基于镜像部署一个项目
    1. kubectl create deployment go-web --image=私有仓库地址:5000/go-web:latest
    2. kubectl get pods //查看启动的pod状态
    复制代码

    如果READY是0,就要去排查没启动的原因
    1. Failed to pull image "xxxx:5000/go-web:latest": Error response from daemon: Get "https://xxxx:5000/v2/": http: server gave HTTP response to HTTPS client。判断是否是更改了docker配置文件没有重启docker导致的。
    2.connect refuse  这种一般是 镜像的tag没打对,按照 私有仓库ip:端口/镜像名:版本 格式打
    启动成功后,把容器内的项目端口暴露出来,让宿主机可以访问
    1. kubectl expose deployment go-web --type=NodePort --port=项目端口
    复制代码
    执行minikube service启动项目

    虚拟机内通过curl命令访问该url,就能正确访问到项目了
    宿主机访问的话,通过nginx反向代理到该url,也能实现外部访问
    到此这篇关于minikube部署Go应用的文章就介绍到这了,更多相关minikube部署Go内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    来源:互联网
    免责声明:如果侵犯了您的权益,请联系站长(1277306191@qq.com),我们会及时删除侵权内容,谢谢合作!

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    ×

    最新评论

    浏览过的版块

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表