K8s部署前后端分离项目(一)_k8s部署前后端分离项目

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

K8s部署前后端分离项目
环境准备
K8s环境
主节点master192.168.3.200
子节点node1192.168.3.201
子节点node2192.168.3.202

Harbor远程仓库
已部署在master主节点上目录为cd /workspace/harbor/harbor
在这里插入图片描述
1、登录地址
http://192.168.3.200
输入用户名密码登录初始用户名为admin,密码为Harbor12345如下图所示
在这里插入图片描述
密码配置在【harbor.cfg】配置文件中的【harbor_admin_password】属性。
Harbor.cfg目录/workspace/harbor/harbor/harbor.cfg

2、查看harbor服务状态:
docker-compose ps

在这里插入图片描述
上图State属性全为【up】表示Harbor服务正常运行。如果未正常运行则重启Harbor即可。

3、重启harbor
docker-compose restart

注意Harbor所有命令需要在Harbor部署目录下执行。

部署前后端分离项目
生成前端vue镜像所有子节点操作
1、打包dist包
1、前端打包获得dist.zip包
2、上传到子节点服务器上自选目录当前目录为/home/docker/nginx/
在这里插入图片描述
上传方法当前目录下输入【rz】后选择本地dist.zip文件后
在这里插入图片描述
3、上传到服务器成功后解压dist.zip命令为unzip dist.zip
在这里插入图片描述
得到dist文件夹。
2、生成default.conf文件
在dist同目录下生成default.conf文件

命令为sudo vim default.conf

文件内容如下

server {
listen 9000;
server_name localhost;

location /DLHYXT/dsmMgr {
    root   /BJ/;
    proxy_set_header Host  $host;
    try_files $uri $uri/ /DLHYXT/dsmMgr/index.html $uri/ =404;
    index  index.html index.htm;
}

location /api/v1/note {
    proxy_redirect off;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header x-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_pass http://192.168.3.200:32081;
}

location /api/v1/dsm {
    proxy_redirect off;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header x-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_pass http://192.168.3.200:32351;
}

location /randCodeImage {
    proxy_redirect off;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_pass  http://192.168.3.200:32081;
}

error_page   500 502 503 504  /50x.html;
location = /50x.html {
    root   html;
}

}

这里只有server部分。复制粘贴后键入【Esc】+【:】输入wq后回车保存文件内容。以下保存文件内容方法一致。
在这里插入图片描述
3、生成Dockerfile文件
同级目录下创建Dockerfile文件

命令为sudo vim Dockerfile

文件内容如下所示复制粘贴后保存文件内容

FROM nginx:latest
MAINTAINER “ly”
LABEL description=“TODO LIST”
COPY dist/ /BJ/DLHYXT/dsmMgr/
COPY default.conf /etc/nginx/conf.d/default.conf
env LANG=C.UTF-8

4、生成镜像
同样的以下前端生成镜像的命令均在同一个目录下运行即/home/docker/nginx/目录下依次运行下列命令完成前端的镜像生成。
生成镜像命令

docker build -t web-todo .
在这里插入图片描述
看到Successfully则表示成功执行成功后可以通过docker images |grep web-todo查看已生成的镜像。

打标签

docker tag web-todo:latest 192.168.3.200/library/web-todo:v1

推到harbor仓库

docker push 192.168.3.200/library/web-todo:v1
在这里插入图片描述
注意第一次推到harbor仓库的时候需要先登录harbor

docker login 192.168.3.200

输入用户名密码后即可成功推送。

查看生成的镜像

docker images

在这里插入图片描述
可以看到生成了三个镜像两个vue和一个nginx。

生成jar包镜像所有子节点操作
1、maven打包
将后端生成的jar包放到服务器
当前目录为 /home/docker/java/
上传jar包方法同上述上传dist.zip方法一致
在这里插入图片描述
2、创建Dockerfile文件
由于有两个jar包所以生成两个Dockerfile文件分别命名为DockerfileDsm和DockerfileNote同样要在jar包平级目录下创建。

DockerfileDsm创建命令sudo vim DockerfileDsm

文件内容如下所示保存文件方法同前端文件保存

FROM frolvlad/alpine-oraclejdk8:slim

RUN mkdir -p /usr/local/dsm

COPY hy-dsm-service.jar /usr/local/dsm/dsm.jar

ENTRYPOINT [“java”,“-jar”,“/usr/local/dsm/dsm.jar”]

DockerfileNote创建命令sudo vim DockerfileNote

文件内容如下所示保存文件方法同前端文件保存

FROM frolvlad/alpine-oraclejdk8:slim

RUN mkdir -p /usr/local/note

COPY note-0.0.1-SNAPSHOT.jar /usr/local/note/note.jar

ENTRYPOINT [“java”,“-jar”,“/usr/local/note/note.jar”]
在这里插入图片描述

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: k8s

“K8s部署前后端分离项目(一)_k8s部署前后端分离项目” 的相关文章