Jenkins+K8s实现持续集成笔记
2020/1/25 11:37:33
本文主要是介绍Jenkins+K8s实现持续集成笔记,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
虚拟机安装
sudo passwd root 设置root的密码、
sudo apt-get update 更新
apt-get install ssh 安装ssh
vim /etc/ssh/sshd_config 编辑 PermitRootLogin yes
systemctl restart sshd 重启ssh
ssh root@192.168.0.142 本机通过ssh链接linux
ufw disable 关闭防火墙
Docker容器
Docker是一种容器技术。(集装箱)
容器是一种轻量级、可以指、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行。
开发在自己笔记本上创建并测试好的容器,无需任何修改就能够在生产系统的虚拟机、物理服务器或公有云上运行。
安装和配置:
- apt-get install -y docker.io(这个是Ubuntu系统)
- sudo yum install docker-ce docker-ce-cli containerd.io(这个是CentOS系统)
- systemctl start docker 启动
- docker-io, docker-engin 是以前早期的版本,docker-ce 是社区版本
- /etc/docker/daemon.json 配置
{ "registry-mittors": ["https://dvwzscc0.mirror.aliyuncs.com"] }
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 hub上查看
Docker概念:
- 镜像(image)
- 容器(container)
- 仓库(registry):共有和私有,Docker hub为默认仓库
- 命令:
- docker build(镜像构建)
docker build -t aaa:1.0 .
,在当前目录构建一个名为aaa的镜像- docker build -t aaa:1.0 -f /root/Dockerfile,手动指定镜像地址
- docker tag mysql:5.6 myregistry/mymysql:1.0 镜像tag
- docker push myregistey/mymysql:1.0 会把mysql推送到构建的镜像中
- docker run(运行) 、
- docker pull(拉取镜像)、
- docker images ls(查看镜像)、
- docker rmi mysql(删除镜像)、
- docker ps(查询正在运行容器)、docker ps -a(包含退出的)
- docker exec -it ce5307fc90b6 /bin/bash(进入容器)、exit(退出容器)
- docker logs -f ce5307fc90b6(查看动态容器日志)
- docker stop ce5307fc90b6 (停止)
- docker rmce5307fc90b6 (删除)
- docker login(仓库登录)
- docker build(镜像构建)
- Dockerfile记本语法(FROM从哪个镜像来、RUN运行哪些命令、WORKDIR工作目录、CMD/ENTRYPOINT执行脚本、EXPOSE向外暴露的端口号)
K8s(Kubernetes)
基于容器技术的分布式架构领先方案,它是google严格保密十几年的秘密武器-Borg的一个开源版本。
是Google开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。
实现容器的自动化复制和部署。随时扩展或收缩容器规模,并提供负载均衡。方便容器升级。提升容器弹性,如果失效就替换它。
K8s测试服务器的集中化、自动化管理。将各种平台的服务器加入集群,按需部署或销毁。持续集成时方便自动部署。
kubectl create -f /root/kube.yaml
kubectl apply -f /root/kube.yaml 客户端将请求发送给API server
kubectl get service --all-namespaces
kubectl delete -f /root/kube.yaml
kubectl get pod --all-namespaces -o wide 获取Pod
kubectl describe pod xxxxx -n kube-system 信息Pod
kubectl delete pod xxxx -n kube-system 删除Pod
持续集成
持续集成(CI)时一种软件开发实践,每次集成都通过自动化的构建(包括编译、打包、部署、自动化测试)来验证。
这篇关于Jenkins+K8s实现持续集成笔记的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-242024年最值得使用的任务看板管理工具,6大推荐有何区别
- 2024-11-24AI助手、跨平台集成、数据安全,这些功能如何彻底改变你的项目管理方式?
- 2024-11-245款提升工作专注力的办公软件,哪一款最适合你?
- 2024-11-24适合J型人格的办公软件排行,5款完美支持工作计划管理的工具
- 2024-11-24多平台无缝集成对项目管理有多重要?你的工具达标了吗?
- 2024-11-24团队知识库怎么建?教你用看板打造灵感共享平台
- 2024-11-24项目管理工具哪个好?这5款操作简单、页面简洁的工具帮助提升效率
- 2024-11-24适合不同科研需求的团队协作工具推荐
- 2024-11-23跨平台解决方案资料:新手入门必备指南
- 2024-11-23跨平台开发工具与框架资料入门教程