k8s新建service
- service相当于pod的集合 向外暴漏服务地址
- metadata:包含Pod的一些meta信息,比如名称、namespace、标签等信息。
- spec:包括一些container,storage,volume以及其他Kubernetes需要的参数,以及诸如是否在容器失败时重新启动容器的属性。可在特定Kubernetes API找到完整的Kubernetes Pod的属性
- app: mongodb #这里选择器一定要选择容器的标签
- kubectl create -f service.yaml 执行命令创建一个service
- kubectl get services 列出所有的services
- ip地址随机分配的
- kubectl exec -ti icregister-8bc7ccc8b-m7cdf -n icdev – bin/sh 进入pod里面
- kubectl describe configmaps register-env -n icdev 查看configmap 名字在yaml文件里面
-
总流程
-
写好docker file
FROM alpine WORKDIR /register ADD register . RUN mkdir toml ADD service.toml toml/ #toml文件需要复制到pod里面 EXPOSE 8000 CMD ["./register"]
-
-
编写ENV文件
创建configmap-
编写k8s yaml文件
镜像地址与docker定义的一样 -
触发jenkis 自动创建docker镜像
注意: 要加CGO_ENABLED=0 -
kubectl create -f deployment.yaml #创建pod kubectl get pods -n icdev #展示创建的pod 可以看日志查看创建情况
-
-
List item
-
docker login --username=江苏铭博信息技术有限公司 registry.cn-shanghai.aliyuncs.com 密码是mt123456
-
步骤
-
cat /root/.kube/config 查看kubectl config
-
kubectl config文件放在这个目录下面
-
docker build -t nginx-alpine . **dokcer build **
-
运行容器
-
Registry:注册服务器,用于管理镜像仓库,起到的是服务器的作用。
Repository:镜像仓库,用于存储具体的docker镜像,起到的是仓库存储作用 -
Docker是一个开源的应用容器引擎,开发者可以打包他们的应用及依赖到一个可移植的容器中,发布到流行的Linux机器上,也可实现虚拟化。
k8s是一个开源的容器集群管理系统,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。
说白了,kubernetes去管理Docker集群 -
Docker技术的三大核心概念,分别是:
镜像(Image) 容器(Container) 仓库(Repository)
-
一个K8S系统,通常称为一个K8S集群(Cluster)。
这个集群主要包括两个部分: 一个Master节点(主节点) 一群Node节点(计算节点)