为了账号安全,请及时绑定邮箱和手机立即绑定

Jenkins+K8s实现持续集成

鹿哥 软件测试工程师
难度入门
时长 2小时30分
学习人数
综合评分7.30
31人评价 查看评价
8.1 内容实用
7.2 简洁易懂
6.6 逻辑清晰
  • 使用阿里云镜像安装:

    Debian / Ubuntu

    apt-get update && apt-get install -y apt-transport-https
    curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add - 
    cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
    deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
    EOF  
    apt-get update
    apt-get install -y kubelet kubeadm kubectl


    查看全部
    9 采集 收起 来源:k8s的安装

    2019-04-15

  • 拉取MySQL镜像:

    docker pull mysql:5.6

    运行mysql镜像:

    docker run -p 3306:3306 --name mymysql -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6

    docker的基本使用

    版本查看:

    docker version
    # 镜像拉取
    docker pull ImageName
    # 镜像查询
    docker images
    # 或者
    docker image ls
    # 镜像删除
    docker rmi ImageName
    # 容器运行、端口映射、挂存储卷
    # docker run 即运行容器
    # -p 3306:3306 宿主机端口端口:docker容器中端口进行映射
    # --name mymysql 容器名称 
    # -v /home/mysql/data:/var/lib/mysql 宿主机的目录:容器中数据存储目录进行映射
    # -e MYSQL_ROOT_PASSWORD=123456 设置root用户名123456,需要哪些环境变量?去dockerhub对应镜像查看对应镜像需要的环境变量
    docker run -p 3306:3306 --name mymysql -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6
    # 进入容器
    docker -it ContainerID /bin/bash
    # 查看容器日志
    docker logs -f ContainerID
    # 查询容器
    # 查询正在运行的容器
    docker ps
    # 查询所有容器
    docker ps -a
    # 容器停止
    docker stop ContainerID
    # 容器删除
    docker rm -f ContainerID
    # 仓库登录
    $ sudo docker login --username=username registry.cn-hangzhou.aliyuncs.com

    # 镜像构建、镜像打tag、镜像推送

    查看全部
    5 采集 收起 来源:docker基本使用

    2019-11-18

  • Jenkins 是什么?

    Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建、测试和部署软件。

    Jenkins 支持各种运行方式,可通过系统包、Docker 或者通过一个独立的 Java 程序。


    查看全部
    2 采集 收起 来源:Jenkins介绍

    2019-07-30

  • 1、K8s能做什么?

    • 容器的自动化复制和部署。随时扩展或收缩容器规模,并提供负载均衡。

    • 方便地容器升级

    • 提供容器弹性,如果失效就替换它

    2、K8s对于测试能做什么?

    • 测试服务器的集中化、自动化管理。将各种平台的服务器加入集群,按需部署或销毁

    • 持续集成是方便地自动部署

    3、K8s架构

    https://img1.sycdn.imooc.com//5d3f9b880001bc7204880477.jpg

    4、K8s基本概念

    • Master是主服务器,node是用于部署应用容器的服务器

    • Pod基本操作单元,也是应用运行的载体。整个kubernetes系统都是围绕着Pod展开的,比如如何部署运行Pod、如何保证Pod的数量、如何访问Pod等。

    • Deployment定义了pod部署的信息。

    • 若干个pod副本组成一个service,对外提供服务

    • 副本是指一个pod的多个实例

    • Namespace 用于多租户的资源隔离。在测试环境中可以根据namespace划分成多套测试环境。默认有2个namespace;kube-system/default

    5、K8s调度过程

    • kubernetes client将请求发送给API server

    • API Server根据请求的类型,将处理的结果存入高可用键值存储系统Etcd中

    • Schedule将未分发的Pod绑定(bind)到可用的Node节点上,存到etcd中

    • Controller Manager根据etcd中的信息,调用Node中的kubelet创建pod

    • Controller Manager监控pod的运行状况并确保运行正常


    查看全部
    2 采集 收起 来源:k8s能做什么

    2019-07-30

  • 安装网络插件:

    1、sysctl net.bridge.bridge-nf-call-iptables=1

    2、curl -O https://raw.githubusercontent.com/coreos/flannel/v0.10.0/Documentation/kube-flannel.yml

    (注:第2条命令执行前貌似需要先登录GitHub)

    3、kube-flannel.yml文件新加内容

          - key: node.kubernetes.io/not-ready

            operator: Exists

            effect: NoSchedule


    查看全部
  • 查看版本:docker  : version

    删除:docker rmi 删除的数据

    镜像查询;docker image ls

    镜像的下载;docker pull 需要下载的镜像

    运行或挂载:docker run -p 

    进入容器:docker exec -it 容器的ID /bin/bash


    查看全部
    2 采集 收起 来源:docker基本使用

    2019-05-07

  • apt-get update

    apt-get install -y docker.io

    http://img1.sycdn.imooc.com//600e5ac70001d24507650137.jpg

    1. 阿里云加速器配置(https://cr.console.aliyun.com/)

    2. sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' {  "registry-mirrors": ["https://xxxx.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker

    3. docker pull mysql:5.6

    4. docker run -p 3306:3306 --name mymysql -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6

    5. 镜像[image]、容器【container】、仓库【registry】

    6. 仓库分公有和私有的两种。Docker hub是默认的仓库【https://hub.docker.com/search?q=mysql&type=image】。

    7. 版本查看:docker version

    8. 镜像拉取: docker pull image-name

    9. 镜像查看:docker images docker image ls

    10. 镜像删除

      1. docker pull nginx

      2. docker images

      3. docker rmi nginx

    11. 容器运行、端口映射、挂存储卷

      1. docker run -p 3306:3306 --name mymysql -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.
      2. # docker run 即运行容器
        # -p 3306:3306 宿主机端口端口:docker容器中端口进行映射
        # --name mymysql 容器名称 
        # -v /home/mysql/data:/var/lib/mysql 宿主机的目录:容器中数据存储目录进行映射
        # -e MYSQL_ROOT_PASSWORD=123456 设置root用户名123456,需要哪些环境变量?去dockerhub
    12. 进入容器: docker exec -it container-id /bin/bash

    13. 查看容器日志 :

      1. 进入容器后,查看日志

      2. docker logs -f container-id 

    14. 查询容器 : 正在运行的容器 docker ps

      1. 所有的容器 docker ps -a 

    15. 设置环境变量

    16. 容器停止: docker stop  container-id 

    17. 容器删除: docker rm  container-id 

    18. 仓库登录:https://cr.console.aliyun.com/cn-hangzhou/instance/credentials

      1. sudo docker login --username=叶2019dec registry.cn-hangzhou.aliyuncs.com


    http://img1.sycdn.imooc.com//600e6a090001ea1509450145.jpg

    19. 镜像的构建: 

        docker build -t aaa:1.0  .

        docker build -t aaa:1.0 -f /root/Dockerfile

    20. 镜像打tag

    21. 镜像推送:



    查看全部
  • docker version

    docker serarch nginx

    docker pull/push nginx:1.18

    docker ps

    docker ps -a

    docker ps -qa

    docker image ls \docker images

    docker run --name nginx-name -p 80:80 -v /data/nginx:/usr/share/nginx/html  --link mysql:mysql --rm  -e VERSION=1.18 -d nginx:1.18

    docker logs -f  nginx-name

    docker exec -it nginx-name\docker-id /bin/bash

    docker stop nginx-name

    docker start/restart nginx-name

    docker login    

    docker build -t nginx:v1 -f Dockerfile-nginx .

    docker tag nginx:v1 nginx:v2

    docker inspect nginx-name

    docker commit   nginx-name nginx:v3


    docker network ls

    docker network create net-name

    docker network rm net-name

    docker run  --name w1 --net net-name -d nginx:1.18

    docker cp ./file  nginx-name:/file

    查看全部
    1 采集 收起 来源:docker基本使用

    2020-12-08

  • 1、K8s基本使用-Deployment创建、删除

    • Kubectl create -f test.yaml

    • Kubectl delete -f test.yaml


    2、K8s基本使用-Pod查看、删除

    • Kubectl get pod --all-namespaces -o wide

    • Kubectl describe pod xxxxx -n kube-system

    • kubectl delete pod xxxx -n kube-system



    查看全部
    1 采集 收起 来源:k8s基本使用

    2020-08-28

  • 许多服务,用一个命令让所有微服务都跑起来

    查看全部
    1 采集 收起 来源:k8s介绍

    2020-06-09

  • 老师,有课件文档吗?

    查看全部
    1 采集 收起 来源:docker基本使用

    2020-01-13

  • Registry安装配置

    1、docker pull registry

    2、docker run -p 5000:5000 -v /home/registry_images::var/lib/registry -d registry

    查看全部
  • 持续集成过程

    1、提交代码

    2、人工/定时触发

    3、自动构建

    4、自动部署

    5、构建成功

    6、获取构建环境信息

    7、邮件通知

    8、自动化测试

    9、构建失败

    10、邮件通知

    查看全部
    1 采集 收起 来源:持续集成

    2019-09-16

  • 查看全部
  • 初始化第4步:

    1、mkdir -p $HOME/.kube

    2、cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

    3、chown $(id -u):$(id -g) $HOME/.kube/config

    查看全部
    1 采集 收起 来源:k8s安装和配置

    2019-09-15

首页上一页1234567下一页尾页

举报

0/150
提交
取消
课程须知
必备知识: 1、初步了解java、maven 2、了解git 3、熟悉Linux 4、了解spring boot 5、了解shell
老师告诉你能学到什么?
1、jenkins 2、docker 3、 k8s

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!