过去企业级的项目都用到了K8S集群。虽然阿里云的ACK做了很多简化,通过UI界面方便创建和管理集群,但是由于K8S涉及的概念较多,里面还是有些东西需要注意。
坑:无法登录阿里云的repo
第一步:开通并创建repo镜像服务 第二步:在mac apple M1芯片机器上通过docker login命令行登录阿里的registry,但是失败报错 原因:
- 用了vpn(主要原因)
- 或许需要改一下 dns server, 改成8.8.8.8
macos M1创建的image无法部署到aliyun的k8s的pod里面(linux)
第一步:在mac M1上docker build一个image 第二步:推image到ali的registry 第三步:创建k8s,部署后pod的日志显示无法启动 exce 什么exit的错误
原因:
- m1上面构建的image是 arm64,k8s里面的node是linux
- 所以image不兼容
解决:
- 需要用 docker buildx来创建多内核版本
- m1我没有解决,感觉多版本时间很长,每次尝试很久;放弃。
- 所以,通过github action直接在github上面用QEMU构建多版本
- 然后,把image CICD推送到registry
configMap容易删除,而且麻烦
第一步:测试k8s,输入一大堆的配置项 第二步:删除k8s后,配置项被删除(因为跟的是k8s的集群)
解决:
- 用yml来配置
- 保存yml,以后复用
配置k8s的名称需要注意,需要是英文字母,小写
比如service port等
需要Always
这里确保每次更新就拉image
负载均衡SLB在service 里面
ingress ngix可以直接配置ssl
待操作