简介:本课程介绍jenkins、docker、k8s以及使用一个实例讲解如何实现持续集成、代码的自动化编译打包和部署。
第1章 课程介绍
本章主要介绍课程目标:1)让大家基本了解docker、k8s、持续集成与Jenkins;2)让大家掌握实际项目在测试环境中,如何通过Jenkins+k8s实现持续集成的;介绍学习内容:Docker、k8s、持续集成、Jenkins、实例 介绍使用案例:一个spring boot项目,使用Jenkins自动化编译、打包、发布 以及效果展示。
1-1 课程整体介绍
课程目标
- 让大家基本了解docker、k8s、持续集成、Jenkins。
- 让大家掌握docker、k8s、Jenkins的基本使用。
- 让大家掌握如何使用Jenkins+k8s实现持续集成与测试环境的自动化管理。
课程安排
- docker
- k8s
- 持续集成
- jenkins
- 实例综合运用
课程使用案例
- 一个spring boot项目,使用Jenkins自动化编译、打包、发布。
- 项目地址:https://github.com/solochen84/SpringBootDemo。
效果展示
课前技术储备
- 初步了解java、maven、spring boot。
- 了解git。
- 熟悉Linux、了解shell。
演示
首先登录jenkins
点击左上角导航栏的Jenkins
选择一个项目,比如ph然后点击进去。
点击左侧菜单的Build with Parameters
选择一个分支(如origin/master),然后点击开始构建。
正在构建中
构建完成访问项目
1-2 实验环境规划
实验环境规划
1-3 虚拟机安装配置
虚拟机安装配置
VirtualBox安装
虚拟机安装
点击新建,新建一个虚拟机,后面一直点击继续,直到创建完成即可。
右键选择启动,正常启动即可。
虚拟机安装配置(一)
设置桥接模式
设置root密码
设置ssh root连接
修改为yes
测试ssh连接
虚拟机安装配置(二)
关闭防火墙
设置kexue上网(操作省略)
第2章 你应该掌握的Docker
本章重点介绍docker是什么、docker为什么出现、docker的特点、docker的基本使用如1. 基本概念:镜像、容器、存储卷、仓库;2. 版本查看、镜像拉取、容器运行、端口映射、数据持久化、进入容器、查看容器日志、查询容器、查询镜像;3. 镜像构建、Dockerfile语法等。
2-1 docker容器
Docker介绍
- Docker是一种容器技术
- 容器是什么-容器是一种轻量级、可移植、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行。
- 开发在自己笔记本上创建并测试好的容器,无需任何修改就能够在生产系统的虚拟机、物理服务器或公有云主机上运行。
Docker的由来
- 容器来源于集装箱,二者的英文都是Container,集装箱解决了运输的难题。
- Docker的中文意思是码头工人。
- Docker的图标是集装箱。
容器 VS 虚拟机
Docker的特点
- Docker的特点:轻量级、可移植、资源占用少。
- 对于开发人员-Build Once,Run Anywhere。
- 对于运维人员-Configure Once,Run Anything。
2-2 docker安装以及配置
Docker安装
- apt-get update
- apt-get install -y docker.io
Docker配置
阿里云加速器配置(https://cr.console.aliyun.com/)
PS:因为docker是需求去下载镜像的,默认是会从docker hub上去下载镜像,docker hub是国外的,下载速度比较慢,所以需要配置加速器。
2-3 docker基本使用
- docker pull mysql:5.6
- docker run -p 3306:3306 --name mymysql -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6
Docker架构
- 镜像(image)、容器(container)、仓库(registry)。
- 仓库分公有和私有两种。Docker hub是默认的仓库。
Docker基本使用
- 版本查看、镜像拉取、镜像查询、镜像删除。
- 容器运行、端口映射、挂存储卷、进入容器、查看容器日志、查询容器、设置环境变量、容器停止、容器删除。
以上容器运行命令中将主机的3306端口和容器的3306端口做了一个映射。
-v参数将宿主机的/home/mysql/data和容器里面的目录/var/lib/mysql做一个映射,然后容器里面该目录的数据就会全部放到宿主机对应的目录下。以后容器重启的话,数据就不会丢失了。
- 仓库登录
- 镜像构建、镜像打tag、镜像推送
来源:慕课网