Centos服务器部署前后端项目

目录

  • 准备工作
    • 1. 准备传输软件
    • 2. 连接服务器
  • 部署Mysql
    • 1.下载Mysql(Linux版本)
    • 2. 解压
    • 3. 修改配置
    • 4. 启动服务
    • 另一种方法Docker
  • 部署后端
  • 1. 在项目根目录中创建Dockerfile文件写入
    • 2. 启动
  • 部署前端
    • 1. 在项目根目录中创建Dockerfile文件写入
    • 2. 启动

准备工作

1. 准备传输软件

下载WinSCP用于传输
WinSCP下载地址

2. 连接服务器

在这里插入图片描述

部署Mysql

1.下载Mysql(Linux版本)

Mysql8下载地址

下载完成后通过WinSCP传输至服务器

2. 解压

tar -xvf mysql-8.3.0-linux-glibc2.28-x86_64.tar.xz  -C /usr/local
  • -x选项表示解压缩
  • -v选项表示在解压缩时显示详细信息
  • -f选项指定要解压缩的文件名
  • -C选项指定解压缩后的目标目录。

3. 修改配置

 cd /usr/local/#修改文件名mv mysql-8.3.0-linux-glibc2.28-x86_64 mysql
...

4. 启动服务

[root@iZ2zefyktv92zomf8sbocfZ mysql] cd /usr/local/mysql/support-files
# 启动
[root@iZ2zefyktv92zomf8sbocfZ support-files] ./mysql.server start

另一种方法Docker

#获取 MySQL Docker 镜像:
docker pull mysql:8.0
# 创建 MySQL 容器
docker run --name mysql-container -dp 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
# 进入容器内部
docker exec -it mysql-container mysql -u root -p

docker run 用于创建指定镜像和启动新的容器实例,
而 docker exec -it 用于在已经运行的容器内执行命令。

导入本地sql文件(或者本地连接再导入)
由于容器是独立的, 在容器内部找不到本地路径所以采用以下方法:

# 1将sql文件复制到 MySQL 容器内部:
docker cp /root/reso/car.sql   mysql-container:/car.sql
#将 car.sql 文件复制到名为 mysql-docker 的 MySQL 容器内部的根目录。# 2. 进入 MySQL 容器
docker exec -it mysql-container bash#3.在容器内部执行以下命令:
mysql -u root -p vehicle_system < /car.sql

在这里插入图片描述
本地连接成功

部署后端

1. 在项目根目录中创建Dockerfile文件写入

#Dockerfile
# 运行时环境的基础镜像
FROM openjdk:17-jdk
ENTRYPOINT ["java", "-jar", "/app.jar"]
#暴露
EXPOSE 8081
ARG JAR_FILE
COPY vehicle.jar app.jar
RUN ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' > /etc/timezone

2. 启动

# 创建镜像
docker build -t springboot .
docker run -p 8081:8081 --name spring-container -d springboot:1.0
docker logs spring-container

请求成功
请求成功!


注意:

  1. 报错显示java找不到
    在这里插入图片描述
    设置正确的镜像源FROM openjdk:17-jdk
  2. 报错显示jar找不到
    设置正确的路径

部署前端

1. 在项目根目录中创建Dockerfile文件写入

Dockerfile
FROM nginx:alpine# 将当前目录下的所有文件复制到容器中的 /usr/share/nginx/html 目录
COPY . /usr/share/nginx/html# 暴露容器的 80 端口
EXPOSE 80# 容器启动时运行的命令
CMD ["cd  /usr/sbin/", "./nginx"]

2. 启动

# 创建镜像
docker build -t react-vehicle .
#创建一个容器并启动,-d后台运行-p(主机端口:容器端口),react-vehicle镜像名
docker run -dp 80:80 react-vehicle

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/263491.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C++那些事儿】C++入门 | 命名空间 | 缺省参数 | 引用 | 内联函数 | auto关键字 | 范围for循环 | nullptr

&#x1f4f7; 江池俊&#xff1a; 个人主页 &#x1f525;个人专栏&#xff1a; ✅数据结构冒险记 ✅C那些事儿 &#x1f305; 有航道的人&#xff0c;再渺小也不会迷途。 文章目录 前言1. C关键字(C98)2. 命名空间2.1 命名空间定义2.2 命名空间使用 3. C输入&输出4. 缺…

【C++】构造函数和析构函数详解

个人主页 &#xff1a; zxctscl 文章封面来自&#xff1a;艺术家–贤海林 如有转载请先通知 文章目录 1. 类的6个默认成员函数2. 构造函数2.1 概念2.2 构造函数特性2.2.1 语法特性2.2.2 其他特性 3. 析构函数3.1 概念3.2 特性 4. 构造与析构顺序 1. 类的6个默认成员函数 如果一…

一周学会Django5 Python Web开发-Http请求HttpRequest请求类

锋哥原创的Python Web开发 Django5视频教程&#xff1a; 2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~共计25条视频&#xff0c;包括&#xff1a;2024版 Django5 Python we…

Repeater:创建大量类似项

Repeater 类型用于创建大量类似项。与其它视图类型一样&#xff0c;Repeater有一个model和一个delegate。 首次创建Repeater时&#xff0c;会创建其所有delegate项。若存在大量delegate项&#xff0c;并且并非所有项都必须同时可见&#xff0c;则可能会降低效率。 有2种方式可…

设计模式学习笔记 - 面向对象 - 7.为什么要多用组合少用继承?如何决定该用组合还是继承?

前言 在面向对象编程中&#xff0c;有一条非常经典的设计原则&#xff1a;组合优于继承&#xff0c;多用组合少用继承。 为什么不推荐使用继承&#xff1f; 组合比继承有哪些优势&#xff1f; 如何判断该用组合还是继承&#xff1f; 为什么不推荐使用继承&#xff1f; 继承…

【2024.02.22】定时执行专家 V7.0 发布 - TimingExecutor V7.0 Release - 龙年春节重大更新版本

目录 ▉ 新版本 V7.0 下载地址 ▉ V7.0 新功能 ▼2024-02-21 V7.0 - 更新日志▼ ▉ V7.0 新UI设计 ▉ 新版本 V7.0 下载地址 BoomWorks软件的最新版本-CSDN博客文章浏览阅读10w次&#xff0c;点赞9次&#xff0c;收藏41次。▉定时执行专家—毫秒精度、专业级的定时任务执行…

【LeetCode每日一题】 单调栈的案例84 柱状图中最大的矩形

84 柱状图中最大的矩形 给定 n 个非负整数&#xff0c;用来表示柱状图中各个柱子的高度。每个柱子彼此相邻&#xff0c;且宽度为 1 。 求在该柱状图中&#xff0c;能够勾勒出来的矩形的最大面积。 示例 1: 输入&#xff1a;heights [2,1,5,6,2,3] 输出&#xff1a;10 解释…

神经网络系列---权重初始化方法

文章目录 权重初始化方法Xavier初始化&#xff08;Xavier initialization&#xff09;Kaiming初始化&#xff0c;也称为He初始化LeCun 初始化正态分布与均匀分布Orthogonal InitializationSparse Initializationn_in和n_out代码实现 权重初始化方法 Xavier初始化&#xff08;X…

【SpringCloudAlibaba系列--nacos配置中心】

Nacos做注册中心以及使用docker部署nacos集群的博客在这&#xff1a; 容器化部署Nacos&#xff1a;从环境准备到启动 容器化nacos部署并实现服务发现(gradle) 使用docker部署nacos分布式集群 下面介绍如何使用nacos做配置中心 首先要进行nacos-config的引入&#xff0c;引入…

leetcode单调栈

739. 每日温度 请根据每日 气温 列表&#xff0c;重新生成一个列表。对应位置的输出为&#xff1a;要想观测到更高的气温&#xff0c;至少需要等待的天数。如果气温在这之后都不会升高&#xff0c;请在该位置用 0 来代替。 例如&#xff0c;给定一个列表 temperatures [73, …

Linux:gitlab创建组,创建用户,创建项目

创建组和项目 让后可以在组里创建一个个仓库 创建成员 我创建个成员再把他分配进这个组里 进入管理员 密码等会我们创建完用户再去配置密码 Regular是普通的用户&#xff0c;只可以正常去访问指定规则的项目 而下面的administrator就是管理员&#xff0c;可以随便进项目&…

8-pytorch-损失函数与反向传播

b站小土堆pytorch教程学习笔记 根据loss更新模型参数 1.计算实际输出与目标之间的差距 2.为我们更新输出提供一定的依据&#xff08;反向传播&#xff09; 1 MSEloss import torch from torch.nn import L1Loss from torch import nninputstorch.tensor([1,2,3],dtypetorch.fl…

数据仓库选型建议

1 数仓分层 1.1 数仓分层的意义 **数据复用&#xff0c;减少重复开发&#xff1a;**规范数据分层&#xff0c;开发一些通用的中间层数据&#xff0c;能够减少极大的重复计算。数据的逐层加工原则&#xff0c;下层包含了上层数据加工所需要的全量数据&#xff0c;这样的加工方…

黄仁勋最新专访:机器人基础模型可能即将出现,新一代GPU性能超乎想象

最近&#xff0c;《连线》的记者采访了英伟达CEO黄仁勋。 记者表示&#xff0c;与Jensen Huang交流应该带有警告标签&#xff0c;因为这位Nvidia首席执行官对人工智能的发展方向如此投入&#xff0c;以至于在经过近 90 分钟的热烈交谈后&#xff0c;我&#xff08;指代本采访的…

改进Yolov5目标检测与单目测距 yolo速度测量-pyqt界面-yolo添加注意力机制

当设计一个结合了 YOLOv5 目标检测、单目测距与速度测量以及 PyQt 界面的毕业设计时&#xff0c;需要考虑以下几个方面的具体细节&#xff1a; 计算机视觉、图像处理、毕业辅导、作业帮助、代码获取&#xff0c;私聊会回复! YOLOv5 目标检测&#xff1a; 首先&#xff0c;选择…

PostgreSQL 实体化视图的使用

上周的教程中&#xff0c;通过 DVD Rental Database 示例&#xff0c;让我们了解了在 PostgreSQL 中创建实体化视图的过程。正如我们所了解的&#xff0c;PostgreSQL 实体化视图提供了一种强大的机制&#xff0c;通过预计算和存储查询结果集为物理表来提高查询性能。接下来的内…

【爬虫逆向实战篇】定位加密参数、断点调试与JS代码分析

文章目录 1. 写在前面2. 确认加密参数3. 加密参数定位4. XHR断点调试 【作者主页】&#xff1a;吴秋霖 【作者介绍】&#xff1a;Python领域优质创作者、阿里云博客专家、华为云享专家。长期致力于Python与爬虫领域研究与开发工作&#xff01; 【作者推荐】&#xff1a;对JS逆向…

实现外网手机或者电脑随时随地远程访问家里的电脑主机(linux为例)

文章目录 一、背景概要二、安装配置花生壳软件(linux版本)三、手机端(外网)验证连接四、安装ubuntu20server版系统遇到的问题记录 一、背景概要 由于经常在遇到某些问题的时候&#xff0c;针对某一个场景的理解&#xff0c;需要借助于自己的电脑去编译(aosp/linux/qemu)代码查…

Python中回调函数的理解与应用

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站零基础入门的AI学习网站~。 目录 前言 回调函数的概念 回调函数的基本用法 回调函数的实现方式 1 使用函数 2 使用类方法 3 使用类实…

1.QT简介(介绍、安装,项目创建等)

1. QT介绍 Qt&#xff08;官方发音 [kju:t]&#xff09;是一个跨平台的C开发库&#xff0c;主要用来开发图形用户界面&#xff08;Graphical User Interface&#xff0c;GUI&#xff09;程序 Qt 是纯 C 开发的&#xff0c;正常情况下需要先学习C语言、然后在学习C然后才能使用…