一斤多少 發表於 2024-2-28 11:38:38

Centos服务器部署前后端项目的实战教程

<div id="navCategory"><h5 class="catalogue">目录</h5><ul class="first_class_ul"><li><a href="#_label0">准备工作</a></li><ul class="second_class_ul"><li><a href="#_lab2_0_0">1. 准备传输软件</a></li><li><a href="#_lab2_0_1">2. 连接服务器</a></li></ul><li><a href="#_label1">部署Mysql</a></li><ul class="second_class_ul"><li><a href="#_lab2_1_2">1.下载Mysql(Linux版本)</a></li><li><a href="#_lab2_1_3">2. 解压</a></li><li><a href="#_lab2_1_4">3. 修改配置</a></li><li><a href="#_lab2_1_5">4. 启动服务</a></li></ul><li><a href="#_label2">部署后端</a></li><ul class="second_class_ul"><li><a href="#_lab2_2_6">1. 在项目根目录中创建Dockerfile文件写入</a></li></ul><li><a href="#_label3">部署前端</a></li><ul class="second_class_ul"><li><a href="#_lab2_3_7">1. 在项目根目录中创建Dockerfile文件写入</a></li><li><a href="#_lab2_3_8">2. 启动</a></li></ul></ul></div><p class="maodian"><a name="_label0"></a></p><h2>准备工作</h2>
<p class="maodian"><a name="_lab2_0_0"></a></p><h3>1. 准备传输软件</h3>
<p>下载WinSCP用于传输<br /><a href="https://winscp.net/download/WinSCP-6.3.1-Setup.exe" rel="external nofollow"target="_blank">WinSCP下载地址</a></p>
<p class="maodian"><a name="_lab2_0_1"></a></p><h3>2. 连接服务器</h3>
<p style="text-align:center"><img alt="" src="https://img.jbzj.com/file_images/article/202402/2024022811334319.png" /></p>
<p class="maodian"><a name="_label1"></a></p><h2>部署Mysql</h2>
<p class="maodian"><a name="_lab2_1_2"></a></p><h3>1.下载Mysql(Linux版本)</h3>
<p><a href="https://dev.mysql.com/downloads/file/?id=526312" rel="external nofollow"target="_blank">Mysql8下载地址</a></p>
<p>下载完成后通过WinSCP<strong>传输至服务器</strong></p>
<p class="maodian"><a name="_lab2_1_3"></a></p><h3>2. 解压</h3>
<div class="jb51code"><pre class="brush:bash;">tar -xvf mysql-8.3.0-linux-glibc2.28-x86_64.tar.xz-C /usr/local</pre></div>
<ul><li>-x选项表示解压缩</li><li>-v选项表示在解压缩时显示详细信息</li><li>-f选项指定要解压缩的文件名</li><li>-C选项指定解压缩后的目标目录。</li></ul>
<p class="maodian"><a name="_lab2_1_4"></a></p><h3>3. 修改配置</h3>
<div class="jb51code"><pre class="brush:bash;"> cd /usr/local/
#修改文件名
mv mysql-8.3.0-linux-glibc2.28-x86_64 mysql
...</pre></div>
<p class="maodian"><a name="_lab2_1_5"></a></p><h3>4. 启动服务</h3>
<div class="jb51code"><pre class="brush:bash;"> cd /usr/local/mysql/support-files
# 启动
./mysql.server start</pre></div>
<p>另一种方法Docker</p>
<div class="jb51code"><pre class="brush:bash;">#获取 MySQL Docker 镜像:
docker pull mysql:8.0</pre></div>
<div class="jb51code"><pre class="brush:bash;"># 创建 MySQL 容器
docker run --name mysql-container -dp 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql</pre></div>
<div class="jb51code"><pre class="brush:bash;"># 进入容器内部
docker exec -it mysql-container mysql -u root -p</pre></div>
<blockquote><p>docker run 用于创建指定镜像和启动新的容器实例,<br />而 docker exec -it 用于在已经运行的容器内执行命令。</p></blockquote>
<p>导入本地sql文件(或者本地连接再导入)<br /><strong>由于容器是独立的, 在容器内部找不到本地路径</strong>所以采用以下方法:</p>
<div class="jb51code"><pre class="brush:bash;"># 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 &lt; /car.sql</pre></div>
<p style="text-align:center"><img alt="" src="https://img.jbzj.com/file_images/article/202402/2024022811334420.png" /></p>
<p>本地连接成功</p>
<p class="maodian"><a name="_label2"></a></p><h2>部署后端</h2>
<p class="maodian"><a name="_lab2_2_6"></a></p><p class="maodian"><a name="_lab2_3_7"></a></p><h3>1. 在项目根目录中创建Dockerfile文件写入</h3>
<div class="jb51code"><pre class="brush:bash;">#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 &amp;&amp; echo 'Asia/Shanghai' &gt; /etc/timezone</pre></div>
<p>2. 启动</p>
<div class="jb51code"><pre class="brush:bash;"># 创建镜像
docker build -t springboot .
docker run -p 8081:8081 --name spring-container -d springboot:1.0
docker logs spring-container</pre></div>
<p style="text-align:center"><img alt="" src="https://img.jbzj.com/file_images/article/202402/2024022811334421.png" /></p>
<p>请求成功!</p>
<p>注意:</p>
<p>报错显示java找不到</p>
<p style="text-align:center"><img alt="" src="https://img.jbzj.com/file_images/article/202402/2024022811334422.png" /></p>
<p><strong>设置正确的镜像源</strong><code>FROM openjdk:17-jdk</code>报错显示jar找不到<br /><strong>设置正确的路径</strong></p>
<p class="maodian"><a name="_label3"></a></p><h2>部署前端</h2>
<h3>1. 在项目根目录中创建Dockerfile文件写入</h3>
<div class="jb51code"><pre class="brush:bash;">Dockerfile
FROM nginx:alpine
# 将当前目录下的所有文件复制到容器中的 /usr/share/nginx/html 目录
COPY . /usr/share/nginx/html
# 暴露容器的 80 端口
EXPOSE 80
# 容器启动时运行的命令
CMD ["cd/usr/sbin/", "./nginx"]</pre></div>
<p class="maodian"><a name="_lab2_3_8"></a></p><h3>2. 启动</h3>
<div class="jb51code"><pre class="brush:bash;"># 创建镜像
docker build -t react-vehicle .
#创建一个容器并启动,-d后台运行-p(主机端口:容器端口),react-vehicle镜像名
docker run -dp 80:80 react-vehicle</pre></div>
<p>到此这篇关于Centos服务器部署前后端项目的文章就介绍到这了,更多相关Centos服务器部署内容请搜索琼殿技术社区以前的文章或继续浏览下面的相关文章希望大家以后多多支持琼殿技术社区!</p>
頁: [1]
查看完整版本: Centos服务器部署前后端项目的实战教程