我是小白,听了大神一节课,记了很多名词,比如:
centos,ghost(博客),docker,nginx,linux,gitbook,jenkins等等,课后也查阅了相关资料,还是云里雾里,我就想弄清楚几个问题
- 他们之间是什么关系?
- 每一个是什么分工,或者说起什么作用,替代品有哪些?
- 而又为什么选择当前这个?不用这个行不行?
哪位大佬能不能用言简意赅通俗易懂的语言给我 这种初学者梳理一下
我是小白,听了大神一节课,记了很多名词,比如:
centos,ghost(博客),docker,nginx,linux,gitbook,jenkins等等,课后也查阅了相关资料,还是云里雾里,我就想弄清楚几个问题
哪位大佬能不能用言简意赅通俗易懂的语言给我 这种初学者梳理一下
...
centos/linux 都是操作系统 类似windows,centos是linux下的一类,linux下还有ubuntu、redhat等等各个版本,因为开源,所以发展出了不同的分支
docker:各种依赖环境集装箱,并且类似虚拟机,解决了各种依赖在不同机器上需要重复安装的问题。切换机器只要把镜像拉下来,环境就都OK了
nginx:一个http服务器程序,可以用来代理你的web项目访问。
ghost:没用过,可以快速搭建你自己博客网站的工具。
gitbook,jenkins没用过 加油
15 回答8.2k 阅读
7 回答5.3k 阅读
4 回答4k 阅读
2 回答5.9k 阅读✓ 已解决
2 回答2.5k 阅读✓ 已解决
2 回答2.4k 阅读✓ 已解决
1 回答2.4k 阅读✓ 已解决
CentOS
是操作系统,跟Windows
/macOS
一样。不过Linux
是开源内核,所以可以你可以拿来自己定制并发行,CentOS
就是其中的一个发行版。其他比较有名的发行版还有Debian
/Ubuntu
/SUSE
/Fedora
/RedHat
等等。移动端还有个Android
,也是基于Linux
内核的操作系统。ghost
没听说过。搜了一下是一个 Node.js 编写的开源博客系统。docker
是容器工具。在一台主机上允许彼此隔离的程序(即程序 A 感知不到程序 B 的存在),现在有这么几大派,一是沙盒(Sandbox);二是虚拟化(Virtualization);三就是容器化(Containerization)。其中的区别和优缺点,感兴趣的话可以自己搜索。其实容器化有很多种方案也有很多种工具,但docker
已经成了事实标准。就像浏览器有很多,但Chrome
已经成了事实标准一样,搞前端的一定得会适配Chrome
;搞容器化的也一定得会docker
。nginx
是一个开源的 Web 服务器。跟之类似的还有Apacha
(开源) /IIS
(闭源)等等。各自的优缺点也可以自己搜索。基本上是分布式系统中 Web Server 的事实标准。Linux
前面提了。Linux
严格意义上来说只是个内核,并不是完整的操作系统。我们日常所说的“Linux 系统”,其实指的是基于 Linux 内核的操作系统。Gitbook
是个也是 Node.js 编写的文档管理工具,支持 Markdown 语法,可以渲染成 HTML 文档,这样你就可以在浏览器里直接预览了。Gitbook
名字里虽然带个Git
,但它俩的关系就像雷锋和雷峰塔的关系一样。跟之类似的程序还有Hexo
、docsify
、ReadTheDocs
等等。这个就没有啥垄断地位了,用哪个都行。这个其实更上面的ghost
有点儿重叠。Jenkins
是一个 CI/CD(持续集成 / 持续交付)工具。如果这两个名词你很陌生,那么说明你压根也没有这方面的需求,略过不看可以了。跟之类似的还有GitLab-CI
、Travis CI
等等。这个同样也不是垄断地位的,用哪个都行。上面列举了一些常见的各个工具的替代品。有一些虽然有替代品(比如
docker
、nginx
),但其本身已经形成垄断地位,是事实标准,你要涉足这方面,就得懂它;有一些没有形成垄断,替代品用哪个都行。至于为什么成为了事实标准,那就是另一个问题了。