riskers / blog

:pencil2: 博客写在 Issues 里
http://riskers.github.io/
MIT License
1.13k stars 96 forks source link

一个前端的docker笔记(附demo) #30

Open riskers opened 7 years ago

riskers commented 7 years ago


Docker 大家应该都听过,不过可能对于我们前端来说用得比较少,后端开发和运维应该是对它很了解了。我从去年开始了解到 Docker 的好处后,对它一直很有兴趣。最近,用了一个比较整块的时间研究了一下,这篇文章记录下来。最近2周的空闲时间,看了一下 Docker ,记录一下,免得以后忘了。本文的代码都在 https://github.com/riskers/docker-demo 可以找到。

  1. 一个 Node 应用
  2. docker化一个应用
  3. 发布一个镜像
  4. docker-compose
  5. 多容器应用

Docker 存在的意义

对于我们前端来说,这样比较好理解:构建好的镜像只要就是 package.json,里面只要写好需要的包名和版本号,任何人拿到这份文件都可以获取对应的包,并且能够运行这个程序。但是,我们忘了一个很重要的点,Node 和 npm 也是有版本的啊!举个例子,Node 在 7.x 以上才支持 async ,如果我们的服务器上 Node 的版本是 4.x ,那么部署上去肯定是不行的,然后查个半天 BUG ,才发现是 Node 版本的问题。Docker 就是帮我们解决这种问题的,它能够把 Node 版本也能够像 package.json 那样记录在配置文件中。

Docker概念

Docker 常用命令

容器

镜像

总结

本文大部分是我读《Docker开发指南》时做的笔记,并结合实际自己做了 demo

因为我接触 Docker 的时间很短,关于一些概念可能会有一些错误,欢迎指正。

最后啰嗦一下,其实我作为一个前端在工作中根本用不到 Docker ,只是为了兴趣才来看看,万一以后能用到呢。我的拖延症很严重,本来这是去年就要学的,拖到最近才学。


向我捐助 | 关于我 | 工作机会


Young-Wang commented 6 years ago

博主第一张图被裁剪了

CGerAJ commented 6 years ago

一直关注docker 快速开发部署nodejs应用 基于daoclound 和github ci 或者coding ci 实现快速部署其实挺好玩的 简单的方案 省去了jenkins 和 gitlab的麻烦 目前还在继续研究~

miaomiaogege commented 6 years ago

前端的容器进程 必将改善前端的 部署痛点