docker+k8s+git+jenkins

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文件里面
  1. 总流程

    1. 写好docker file

       		FROM alpine
      
       		WORKDIR /register  
       		
       		ADD register .
       		
       		RUN mkdir toml     
       		
       		ADD service.toml toml/    #toml文件需要复制到pod里面
       		
       		EXPOSE 8000
       		
       		CMD ["./register"]  
      
  2. 编写ENV文件

    在这里插入图片描述
    在这里插入图片描述
    创建configmap

    1. 编写k8s yaml文件
      在这里插入图片描述镜像地址与docker定义的一样

    2. 触发jenkis 自动创建docker镜像在这里插入图片描述在这里插入图片描述
      注意: 要加CGO_ENABLED=0

    3. 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

  • List item 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节点(计算节点)
    
发布了39 篇原创文章 · 获赞 8 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_42123182/article/details/103821768