K8s 如何部署前端网站项目?
准备工作
** **

在开始之前,确保你已经具备以下条件:

  1. 一个 Kubernetes 集群(可以是本地的 Minikube 或者云服务商提供的集群)。
  2. kubectl 命令行工具已安装并配置好。
  3. Docker 已安装,并且能够构建和推送镜像。
    在这里插入图片描述
步骤一:构建 Nginx 镜像

首先,我们需要构建一个简单的 Nginx 镜像。创建一个名为 Dockerfile 的文件,内容如下:

FROM nginx:alpineCOPY . /usr/share/nginx/html



这个 Dockerfile 使用 nginx:alpine 作为基础镜像,并将当前目录下的所有文件复制到 Nginx 的默认静态文件目录中。

接下来,构建并推送镜像到 Docker Hub 或者私有镜像仓库:

docker build -t your-dockerhub-username/nginx-frontend:latest .docker push your-dockerhub-username/nginx-frontend:latest



步骤二:创建 Kubernetes 部署

创建一个名为 nginx-deployment.yaml 的文件,内容如下:

apiVersion: apps/v1kind: Deploymentmetadata:  name: nginx-frontendspec:  replicas: 3  selector:    matchLabels:      app: nginx-frontend  template:    metadata:      labels:        app: nginx-frontend    spec:      containers:      - name: nginx        image: your-dockerhub-username/nginx-frontend:latest        ports:        - containerPort: 80



这个配置文件定义了一个名为 nginx-frontend 的 Deployment,它会创建 3 个 Pod,每个 Pod 运行我们刚刚构建的 Nginx 镜像。

使用 kubectl 创建 Deployment:

kubectl apply -f nginx-deployment.yaml



步骤三:创建 Service

为了让外部能够访问到 Nginx,我们需要创建一个 Service。创建一个名为 nginx-service.yaml 的文件,内容如下:

apiVersion: v1kind: Servicemetadata:  name: nginx-servicespec:  selector:    app: nginx-frontend  ports:    - protocol: TCP      port: 80      targetPort: 80  type: ClusterIP



这个配置文件定义了一个名为 nginx-service 的 Service,它会将流量转发到带有 app: nginx-frontend 标签的 Pod。

使用 kubectl 创建 Service:

kubectl apply -f nginx-service.yaml



步骤四:配置 Ingress

Ingress 是 Kubernetes 中用于管理外部访问的 API 对象。我们需要创建一个 Ingress 资源来将外部流量路由到我们的 Nginx Service。

创建一个名为 nginx-ingress.yaml 的文件,内容如下:

apiVersion: networking.k8s.io/v1kind: Ingressmetadata:  name: nginx-ingress  annotations:    nginx.ingress.kubernetes.io/rewrite-target: /spec:  rules:  - host: your-domain.com    http:      paths:      - path: /        pathType: Prefix        backend:          service:            name: nginx-service            port:              number: 80




这个配置文件定义了一个名为 nginx-ingress 的 Ingress 资源,它会将 your-domain.com 的流量路由到 nginx-service

使用 kubectl 创建 Ingress:

kubectl apply -f nginx-ingress.yaml



步骤五:验证部署
** **

现在,你可以通过访问 http://your-domain.com 来验证部署是否成功。如果一切顺利,你应该能够看到 Nginx 的欢迎页面。

你也可以使用 kubectl 命令来查看资源的状态:

kubectl get deploymentskubectl get serviceskubectl get ingress



总结

通过本文,你已经学会了如何使用 Kubernetes 部署一个前端 Nginx 镜像,并配置 Ingress 来实现外部访问。

Kubernetes 提供了强大的功能来管理容器化应用,希望这篇文章能帮助你更好地理解和使用 K8s。

关于网络安全技术储备

网络安全是当今信息时代中非常重要的一环。无论是找工作还是感兴趣(黑客),都是未来职业选择中上上之选,为了保护自己的网络安全,学习网络安全知识是必不可少的。

如果你是准备学习网络安全(黑客)或者正在学习,下面这些你应该能用得上:

①网络安全学习路线
②20份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥网络安全必备书籍
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析

一、网络安全(黑客)学习路线

网络安全(黑客)学习路线,形成网络安全领域所有的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

二、网络安全教程视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

三、网络安全CTF实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这里带来的是CTF&SRC资料&HW资料,毕竟实战是检验真理的唯一标准嘛~

img

四、网络安全面试题

最后,我们所有的作为都是为就业服务的,所以关键的临门一脚就是咱们的面试题内容,所以面试题板块是咱们不可或缺的部分,这里我给大家准备的就是我在面试期间准备的资料。

在这里插入图片描述

网安其实不难,难的是坚持和相信自己,我的经验是既然已经选定网安你就要相信它,相信它能成为你日后进阶的高效渠道,这样自己才会更有信念去学习,才能在碰到困难的时候坚持下去。

机会属于有准备的人,这是一个实力的时代。人和人之间的差距不在于智商,而在于如何利用业余时间,只要你想学习,什么时候开始都不晚,不要担心这担心那,你只需努力,剩下的交给时间!

这份完整版的网络安全学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

在这里插入图片描述

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐