Day01-系列文介绍、规划

前言

大家好我是 Andy,在休息一次的铁人赛後这次又想不开的来报名了XD
有些读者在看我以前写的文章发现我其实都专攻於前端开发的领域,这次为了要挑战自己就来碰了一个跟前端基本上不会有任何交集的 DevOps 领域,期许自己也能了解每个网站背後的系统原理。

不晓得大家在前端面试的时候有没有被问过类似这种问题:请你讲述使用者在输入网址时,背後的原理是什麽才能让使用者可以顺利的在浏览器中看到网页呢?
遇到这种问题时势必要先有系统的相关知识才能顺利的回答出来,这也是产生了让我想要把这个问题可以回答得更好的动力,因此这次的铁人赛决定挑战自己不擅长的领域藉以了解整个系统架构!

目标

这次的目标非常简单,就是要想办法让自己的电脑可以完整的跑出一个网站架构,藉由单纯的 localhost 网址并利用 80 port 达到前後端沟通,同时也避免了 CORS 问题,不过在达到这个目标之前一定要对系统有初步的认识,所以会介绍目前市面上最常用几个部属应用程序的软件,例如:DockerK8s,最後也会介绍 Nginx 这个反向代理服务器,来达到负载平衡等作用。

先备知识

这次笔者就不会花太多时间在介绍前端的相关知识了,所以後续的 DEMO code 就不会花太多心力在介绍前端的语法,这次最终目标没意外也是会利用 React.js 的架构来进行撰写,如果想了解前端 或 React.js 的世界可以参考以前笔者的铁人赛系列文~

文章规划

这次的文章一共可以分为四个部分:

  • Docker(大约 3 天)

利用 3 天的时间介绍整个 Docker 容器化的基本知识,以及如何撰写 Dockerfile、Docker Compose file 等相关 DEMO,最後再将这些 Docker Image 上传到 DockerHub 中。

  • K8s(本系列文的重头戏约 20 天)

从基本的 K8s 的基本介绍到最後的整合都会在这几天一一介绍,其实 K8s 能玩的东西真的太多了,如果真的要深入研究我想至少可以写两届的铁人赛吧XD
看来下次的铁人赛又可以预约报名了(X)

  • Nginx(大约 3 天)

最後再简单介绍的 Nginx 达到负载平衡,而且也可以利用 Nginx 来 serve 静态档案,我们都知道前端的档案透过 webpack build 完之後会是一堆静态档,这时候如果没有 server 来 serve 这些档案的话就没办法顺利把网页跑起来,利用 Nginx 就可以简单的达到这件事,同时也可以利用 nginx.conf 的设定让这个网页监听 80 port 可以说是相当方便。

  • DEMO(大约 2 天)

最後再用 2 篇文章的篇幅来实作整个前後端沟通的流程,并结合前面介绍的 K8s 让整个网站可以利用 K8s 的架构架设起来。

小结

以上就是这次系列文的相关介绍,希望能够让非後端出身的工程师也能稍微理解整个背後的系统架构,这次也很开心可以跟着 StarBugs Weekly 星巴哥技术周刊 的夥伴们一起参加铁人赛,底下有我们队友系列文的传送门,有兴趣的读者们不妨也多多点击追踪一起学习跟拓展新知识吧!


Starbugs 队友系列文传送门


<<:  Day 16 - CSS Text Shadow Mouse Move Effect

>>:  [Day16] CH10:排序大家族——选择排序法

[Day11] SSTI (Server Side Template Injection)

前言 系列完成3分之1了,今天来谈谈SSTI吧 正文 简介 SSTI,全称Server Side T...

Google Script+LINE 打造聊天机器人 #1-工具介绍

专案简介 起源:方便自己与亲友查询汇率和日期,以及定时提醒汇率以利购买外汇。 功能:查询(1)即时汇...

[Day 8] 线性回归 (Linear Regression)

线性回归(Linear Regression) 今日学习目标 认识线性回归 透过机器学习来找出一条函...

Android学习笔记28

上一篇可以生成QRcode那这篇来说说扫描QRcode 如果要扫描QRcode一定要先取得相机权限 ...

未来狂想:量子计算

人的科技文明发展始终来自於人性 随着科技的一路发展,人类的文明与科技水准一路向上的平稳,再发展的过程...