全栈架构师第十期笔记补录课件总稿_第1页
全栈架构师第十期笔记补录课件总稿_第2页
全栈架构师第十期笔记补录课件总稿_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于Docker的全栈持续集成一、课前准备预习Linux基础知识预习PM2基础知识二、课堂主题使用Docker部署一个全栈程序前端Vue-element-admin 反向 Nginx三、课堂目标掌握Docker容器基本操作掌握Docker部署全栈应用的方法掌握利用Webhook完成持续集成四、知识要点1. Docker是什么操作系统层面的虚拟化技术的进程 于宿主和其它的 的进程 - 容器GO语言开发2. 特点高效的利用系统快速的启动时间一致的运行环境持续交付和部署更轻松的迁移3. 对比传统虚拟机总结开课吧web全栈架构师4. 概念镜像容器仓库5. Docker使用构建一个Nginx服务器1.

2、拉取 镜像# 拉取 镜像docker pull nginx# 查看docker images nginx# 启动镜像mkdir wwwecho 'hello docker!' >> www/index.html# 启动# www目录里面放一个index.htmldocker run -p 80:80 -v $PWD/www:/usr/share/nginx/html -d nginx# 查看进程docker psdocker ps -a / 查看全部# 伪终端 ff6容器的uuiddocker exec -it ff6 /bin/bash# 停止docker sto

3、p ff6# 删除镜像docker rm ff66. Dockerle 定制镜像开课吧web全栈架构师特性容器虚拟机启动秒级分钟级硬盘使用一般为 MB一般为 GB性能接近原生弱于系统支持量单机支持上千个容器一般几十个#DockerfileFROM nginx:latestRUN echo '<h1>Hello, Kaikeba!</h1>' > /usr/share/nginx/html/index.html# 定制镜像docker build -t nginx:kaikeba .# 运行docker run -p 80:80 nginx:kaik

4、eba构建前端应用前端静态化# nginx/conf.d/default.conf(名字千万别写错) server listen# server_name location / 80;root /var/www/html;index index.html index.htm;#DockerfileFROM nginx:latestADD ./dist /var/www/htmlADD ./nginx/conf.d /etc/nginx/conf.d EXPOSE 80# deploy.shdocker build -t kkb-frontend git:web_dev/docker_ci.gi

5、t docker stop kkb-frontenddocker rm kkb-frontenddocker run -p 80:80 -d -name kkb-frontend kkb-frontend9.WebHook实现CI持续集成启动NodeJSvar http = require('http') var createHandler = require('-webhook-handler')var handler = createHandler( path: '/webhooks', secret: 'myHashSecret&#

6、39; )/ 上面的 secret 保持和设置的一致开课吧web全栈架构师五、拓展点、未来计划、行业趋势开课吧web全栈架构师function run_cmd(cmd, args, callback) var spawn = require('child_process').spawn; var child = spawn(cmd, args);var resp = ""child.stdout.on('data', function (buffer) resp += buffer.toString(); ); child.stdout.on

7、('end', function () callback(resp) );http.createServer(function (req, res) handler(req, res, function (err) res.statusCode = 404 res.end('no such location').listen(3000)handler.on('error', function (err) console.error('Error:', err.message)handler.on('*', func

8、tion (event) console.log('Received *', event.payload.action);/ run_cmd('sh', './deploy-dev.sh', function(text) console.log(text) );)handler.on('push', function (event) console.log('Received a push event for %s to %s',, event.payloa

9、d.ref);/ 分支if(event.payload.ref = 'refs/heads/master') console.log('deploy master.')/ run_cmd('sh', './deploy-dev.sh', function(text) console.log(text) );)handler.on('issues', function (event) console.log('Received an issue event for % action=%s: #%d %s', ,event.payload.action, event.payload.issue.number,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论