springboot+vue 开发记录(九)后端打包部署运行

本篇文章主要内容是后端项目写好了,怎么打包部署到服务器上运行。

文章目录

      • [1. 在服务器上安装Docker](#1. 在服务器上安装Docker)
      • [2. 在Docker中装MySQL](#2. 在Docker中装MySQL)
      • [3. 在Docker中设置网桥,实现容器间的网络通信](#3. 在Docker中设置网桥,实现容器间的网络通信)
      • [4. 修改后端配置文件](#4. 修改后端配置文件)
      • [5. 修改pom.xml文件](#5. 修改pom.xml文件)
      • [6. 打包](#6. 打包)
      • [7. 编写DockerFile文件](#7. 编写DockerFile文件)
      • [8. 上传文件到服务器](#8. 上传文件到服务器)
      • [9. 镜像生成](#9. 镜像生成)
      • [10. Docker运行镜像](#10. Docker运行镜像)
      • [11. 查看日志](#11. 查看日志)

1. 在服务器上安装Docker

参考其他文章,安装Docker都是一样一样的

2. 在Docker中装MySQL

这个也可以参考其他文章

3. 在Docker中设置网桥,实现容器间的网络通信

这里主要是Mysql,在mysql运行后:

shell 复制代码
# 查看网桥列表
docker network ls
# 新建网桥
docker network create 网桥名字
# 配置网桥
docker network connect 网桥名字 容器名字

# 查看容器网络
docker inspect 容器名字

容器就算是连上网了。

4. 修改后端配置文件

把mysql数据库主机改改,由于我们的项目是运行在docker上的,由于已经实现了容器间网络通信,所以mysql主机部分就改成容器名。

5. 修改pom.xml文件

这里主要是在pom.xml文件里添加打包配置

xml 复制代码
<!--打包-->
    <packaging>jar</packaging>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <!--这里写上main方法所在类的路径-->
                <configuration>
                    <mainClass>com.game.server.ServerApplication</mainClass>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

6. 打包

这样就有包了:

7. 编写DockerFile文件

8. 上传文件到服务器

我这里用scp命令上传,这里面的路径用你自己的路径

shell 复制代码
scp server/src/Dockerfile 你的服务器号:
scp server/target/server-1.0-SNAPSHOT.jar 你的服务器号:
scp common/target/common-1.0-SNAPSHOT.jar 你的服务器号:

这样就能上传到你的服务器里了。

9. 镜像生成

到服务器里。

输入命令

shell 复制代码
docker build -t 镜像名(自己设置):版本号 .    
注意上面最后有个 . 号,这个是你的DockerFile文件上传到云服务器里的目录路径。

接下来它就开始给你打包镜像了。

10. Docker运行镜像

输入命令

shell 复制代码
docker run -d --name 容器名字(你自己取) -p 8080:8080 --network 网络网桥名 镜像名 

这里要说明:

-d 后台运行

--name 名字

-p 给外界暴露的端口:里面的端口

--network 网络

其中网络名就是你前面(第3步)里创建的网桥名字。

镜像名则是第9步创建的名字。

11. 查看日志

输入以下指令,就可以查看容器日志了

shell 复制代码
docker logs -f 容器名
相关推荐
LYFlied27 分钟前
从 Vue 到 React,再到 React Native:资深前端开发者的平滑过渡指南
vue.js·react native·react.js
80530单词突击赢1 小时前
JavaWeb进阶:SpringBoot核心与Bean管理
java·spring boot·后端
B站_计算机毕业设计之家1 小时前
豆瓣电影数据采集分析推荐系统 | Python Vue Flask框架 LSTM Echarts多技术融合开发 毕业设计源码 计算机
vue.js·python·机器学习·flask·echarts·lstm·推荐算法
爬山算法1 小时前
Hibernate(87)如何在安全测试中使用Hibernate?
java·后端·hibernate
WeiXiao_Hyy1 小时前
成为 Top 1% 的工程师
java·开发语言·javascript·经验分享·后端
苏渡苇2 小时前
优雅应对异常,从“try-catch堆砌”到“设计驱动”
java·后端·设计模式·学习方法·责任链模式
long3162 小时前
Aho-Corasick 模式搜索算法
java·数据结构·spring boot·后端·算法·排序算法
独断万古他化2 小时前
【SSM开发实战:博客系统】(三)核心业务功能开发与安全加密实现
spring boot·spring·mybatis·博客系统·加密
xjt_09012 小时前
基于 Vue 3 构建企业级 Web Components 组件库
前端·javascript·vue.js
rannn_1112 小时前
【苍穹外卖|Day4】套餐页面开发(新增套餐、分页查询、删除套餐、修改套餐、起售停售)
java·spring boot·后端·学习