mirror of
				https://github.com/continew-org/continew-admin.git
				synced 2025-10-31 10:57:13 +08:00 
			
		
		
		
	ci: 优化部署相关脚本,mariadb => mysql
This commit is contained in:
		
							
								
								
									
										10
									
								
								.github/workflows/deploy.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								.github/workflows/deploy.yml
									
									
									
									
										vendored
									
									
								
							| @@ -35,7 +35,7 @@ jobs: | |||||||
|           password: ${{ secrets.SERVER_PASSWORD }} |           password: ${{ secrets.SERVER_PASSWORD }} | ||||||
|           local: ./continew-admin-webapi/target/app |           local: ./continew-admin-webapi/target/app | ||||||
|           remote: /docker/continew-admin |           remote: /docker/continew-admin | ||||||
|       # 5、启动后端服务 |       # 5、启动 | ||||||
|       - name: Start |       - name: Start | ||||||
|         uses: appleboy/ssh-action@master |         uses: appleboy/ssh-action@master | ||||||
|         with: |         with: | ||||||
| @@ -46,7 +46,7 @@ jobs: | |||||||
|           script: | |           script: | | ||||||
|             cd /docker |             cd /docker | ||||||
|             docker-compose up --force-recreate --build -d continew-admin-server |             docker-compose up --force-recreate --build -d continew-admin-server | ||||||
|             docker images  | grep none | awk '{print $3}' | xargs docker rmi |             docker images | grep none | awk '{print $3}' | xargs docker rmi | ||||||
|  |  | ||||||
|   # 部署前端 |   # 部署前端 | ||||||
|   deploy-web: |   deploy-web: | ||||||
| @@ -85,7 +85,7 @@ jobs: | |||||||
|           password: ${{ secrets.SERVER_PASSWORD }} |           password: ${{ secrets.SERVER_PASSWORD }} | ||||||
|           local: ./continew-admin-ui/dist |           local: ./continew-admin-ui/dist | ||||||
|           remote: /docker/continew-admin/tmp |           remote: /docker/continew-admin/tmp | ||||||
|       # 7、重启前端服务 |       # 7、重启 Nginx | ||||||
|       - name: Restart |       - name: Restart | ||||||
|         uses: appleboy/ssh-action@master |         uses: appleboy/ssh-action@master | ||||||
|         with: |         with: | ||||||
| @@ -94,6 +94,6 @@ jobs: | |||||||
|           username: ${{ secrets.SERVER_USERNAME }} |           username: ${{ secrets.SERVER_USERNAME }} | ||||||
|           password: ${{ secrets.SERVER_PASSWORD }} |           password: ${{ secrets.SERVER_PASSWORD }} | ||||||
|           script: | |           script: | | ||||||
|             rm -rf /docker/continew-admin/web/* |             rm -rf /docker/continew-admin/html/* | ||||||
|             mv /docker/continew-admin/tmp/* /docker/continew-admin/web |             mv /docker/continew-admin/tmp/* /docker/continew-admin/html | ||||||
|             docker restart nginx |             docker restart nginx | ||||||
| @@ -186,7 +186,7 @@ git clone https://github.com/Charles7c/continew-admin.git | |||||||
| #   5.1.1 服务器安装好 docker 及 docker-compose(参考:https://blog.charles7c.top/categories/fragments/2022/10/31/CentOS%E5%AE%89%E8%A3%85Docker) | #   5.1.1 服务器安装好 docker 及 docker-compose(参考:https://blog.charles7c.top/categories/fragments/2022/10/31/CentOS%E5%AE%89%E8%A3%85Docker) | ||||||
| #   5.1.2 执行 mvn package 进行项目打包,将 target/app 目录下的所有内容放到 /docker/continew-admin 目录下 | #   5.1.2 执行 mvn package 进行项目打包,将 target/app 目录下的所有内容放到 /docker/continew-admin 目录下 | ||||||
| #   5.1.3 将 docker 目录上传到服务器 / 目录下,并授权(chmod -R 777 /docker) | #   5.1.3 将 docker 目录上传到服务器 / 目录下,并授权(chmod -R 777 /docker) | ||||||
| #   5.1.4 修改 docker-compose.yml 中的 MariaDB 配置、Redis 配置、continew-admin-server 配置、Nginx 配置 | #   5.1.4 修改 docker-compose.yml 中的 MySQL 配置、Redis 配置、continew-admin-server 配置、Nginx 配置 | ||||||
| #   5.1.5 执行 docker-compose up -d 创建并后台运行所有容器 | #   5.1.5 执行 docker-compose up -d 创建并后台运行所有容器 | ||||||
| # 5.2 其他方式部署 | # 5.2 其他方式部署 | ||||||
| ``` | ``` | ||||||
| @@ -215,7 +215,7 @@ pnpm dev | |||||||
| #   6.1.1 服务器安装好 docker 及 docker-compose(参考:https://blog.charles7c.top/categories/fragments/2022/10/31/CentOS%E5%AE%89%E8%A3%85Docker) | #   6.1.1 服务器安装好 docker 及 docker-compose(参考:https://blog.charles7c.top/categories/fragments/2022/10/31/CentOS%E5%AE%89%E8%A3%85Docker) | ||||||
| #   6.1.2 执行 pnpm build 进行项目打包,将 dist 目录下的所有文件放到 /docker/continew-admin/web 目录下 | #   6.1.2 执行 pnpm build 进行项目打包,将 dist 目录下的所有文件放到 /docker/continew-admin/web 目录下 | ||||||
| #   6.1.3 将 docker 目录上传到服务器 / 目录下,并授权(chmod -R 777 /docker) | #   6.1.3 将 docker 目录上传到服务器 / 目录下,并授权(chmod -R 777 /docker) | ||||||
| #   6.1.4 修改 docker-compose.yml 中的 MariaDB 配置、Redis 配置、continew-admin-server 配置、Nginx 配置 | #   6.1.4 修改 docker-compose.yml 中的 MySQL 配置、Redis 配置、continew-admin-server 配置、Nginx 配置 | ||||||
| #   6.1.5 执行 docker-compose up -d 创建并后台运行所有容器 | #   6.1.5 执行 docker-compose up -d 创建并后台运行所有容器 | ||||||
| # 6.2 其他方式部署 | # 6.2 其他方式部署 | ||||||
| ``` | ``` | ||||||
| @@ -231,15 +231,15 @@ pnpm dev | |||||||
| | <a href="https://spring.io/projects/spring-boot" target="_blank">Spring Boot</a> | 3.1.5        | 简化 Spring 应用的初始搭建和开发过程,基于“约定优于配置”的理念,使开发人员不再需要定义样板化的配置。(Spring Boot 3.0 开始,要求 Java 17 作为最低版本) | | | <a href="https://spring.io/projects/spring-boot" target="_blank">Spring Boot</a> | 3.1.5        | 简化 Spring 应用的初始搭建和开发过程,基于“约定优于配置”的理念,使开发人员不再需要定义样板化的配置。(Spring Boot 3.0 开始,要求 Java 17 作为最低版本) | | ||||||
| | <a href="https://undertow.io/" target="_blank">Undertow</a>  | 2.3.10.Final | 采用 Java 开发的灵活的高性能 Web 服务器,提供包括阻塞和基于 NIO 的非堵塞机制。 | | | <a href="https://undertow.io/" target="_blank">Undertow</a>  | 2.3.10.Final | 采用 Java 开发的灵活的高性能 Web 服务器,提供包括阻塞和基于 NIO 的非堵塞机制。 | | ||||||
| | <a href="https://sa-token.dev33.cn/" target="_blank">Sa-Token + JWT</a> | 1.37.0       | 轻量级 Java 权限认证框架,让鉴权变得简单、优雅。             | | | <a href="https://sa-token.dev33.cn/" target="_blank">Sa-Token + JWT</a> | 1.37.0       | 轻量级 Java 权限认证框架,让鉴权变得简单、优雅。             | | ||||||
| | <a href="https://mariadb.org/" target="_blank">MariaDB</a>   | 11.1.2       | MySQL 的一个分支,主要由开源社区在维护,完全兼容 MySQL,包括 API 和命令行,能轻松成为 MySQL 的代替品。 | |  | ||||||
| | <a href="https://baomidou.com/" target="_blank">MyBatis Plus</a> | 3.5.4        | MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,简化开发、提高效率。 | | | <a href="https://baomidou.com/" target="_blank">MyBatis Plus</a> | 3.5.4        | MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,简化开发、提高效率。 | | ||||||
| | <a href="https://www.kancloud.cn/tracy5546/dynamic-datasource/2264611" target="_blank">dynamic-datasource-spring-boot-starter</a> | 4.2.0        | 基于 Spring Boot 的快速集成多数据源的启动器。                | | | <a href="https://www.kancloud.cn/tracy5546/dynamic-datasource/2264611" target="_blank">dynamic-datasource-spring-boot-starter</a> | 4.2.0        | 基于 Spring Boot 的快速集成多数据源的启动器。                | | ||||||
| | Hikari                                                       | 5.0.1        | JDBC 连接池,号称 “史上最快连接池”,SpringBoot 在 2.0 之后,采用的默认数据库连接池就是 Hikari。 | | | Hikari                                                       | 5.0.1        | JDBC 连接池,号称 “史上最快连接池”,SpringBoot 在 2.0 之后,采用的默认数据库连接池就是 Hikari。 | | ||||||
|  | | <a href="https://dev.mysql.com/downloads/mysql/" target="_blank">MySQL</a> | 8.0.33       | 体积小、速度快、总体拥有成本低,是最流行的关系型数据库管理系统之一。 | | ||||||
| | <a href="https://dev.mysql.com/doc/connector-j/8.0/en/" target="_blank">mysql-connector-j</a> | 8.0.33       | MySQL Java 驱动。                                            | | | <a href="https://dev.mysql.com/doc/connector-j/8.0/en/" target="_blank">mysql-connector-j</a> | 8.0.33       | MySQL Java 驱动。                                            | | ||||||
| | <a href="https://github.com/p6spy/p6spy" target="_blank">P6Spy</a> | 3.9.1        | SQL 性能分析组件。                                           | | | <a href="https://github.com/p6spy/p6spy" target="_blank">P6Spy</a> | 3.9.1        | SQL 性能分析组件。                                           | | ||||||
| | <a href="https://github.com/liquibase/liquibase" target="_blank">Liquibase</a> | 4.20.0       | 用于管理数据库版本,跟踪、管理和应用数据库变化。             | | | <a href="https://github.com/liquibase/liquibase" target="_blank">Liquibase</a> | 4.20.0       | 用于管理数据库版本,跟踪、管理和应用数据库变化。             | | ||||||
| | <a href="https://redis.io/" target="_blank">Redis</a>        | 7.2.3        | 高性能的 key-value 数据库。                                  | |  | ||||||
| | <a href="https://github.com/redisson/redisson/wiki/Redisson%E9%A1%B9%E7%9B%AE%E4%BB%8B%E7%BB%8D" target="_blank">Redisson</a> | 3.24.3       | 不仅仅是一个 Redis Java 客户端,同其他 Redis Java 客户端有着很大的区别,相比之下其他客户端提供的功能还仅仅停留在作为数据库驱动层面上,比如仅针对 Redis 提供连接方式,发送命令和处理返回结果等。而 Redisson 充分的利用了 Redis 键值数据库提供的一系列优势,基于 Java 实用工具包中常用接口,为使用者提供了一系列具有分布式特性的常用工具类。使得原本作为协调单机多线程并发程序的工具包获得了协调分布式多机多线程并发系统的能力,大大降低了设计和研发大规模分布式系统的难度。同时结合各富特色的分布式服务,更进一步简化了分布式环境中程序相互之间的协作。 | | | <a href="https://github.com/redisson/redisson/wiki/Redisson%E9%A1%B9%E7%9B%AE%E4%BB%8B%E7%BB%8D" target="_blank">Redisson</a> | 3.24.3       | 不仅仅是一个 Redis Java 客户端,同其他 Redis Java 客户端有着很大的区别,相比之下其他客户端提供的功能还仅仅停留在作为数据库驱动层面上,比如仅针对 Redis 提供连接方式,发送命令和处理返回结果等。而 Redisson 充分的利用了 Redis 键值数据库提供的一系列优势,基于 Java 实用工具包中常用接口,为使用者提供了一系列具有分布式特性的常用工具类。使得原本作为协调单机多线程并发程序的工具包获得了协调分布式多机多线程并发系统的能力,大大降低了设计和研发大规模分布式系统的难度。同时结合各富特色的分布式服务,更进一步简化了分布式环境中程序相互之间的协作。 | | ||||||
|  | | <a href="https://redis.io/" target="_blank">Redis</a>        | 7.2.3        | 高性能的 key-value 数据库。                                  | | ||||||
| | <a href="https://sms4j.com/" target="_blank">SMS4J</a>       | 3.0.3        | 短信聚合框架,轻松集成多家短信服务,解决接入多个短信 SDK 的繁琐流程。 | | | <a href="https://sms4j.com/" target="_blank">SMS4J</a>       | 3.0.3        | 短信聚合框架,轻松集成多家短信服务,解决接入多个短信 SDK 的繁琐流程。 | | ||||||
| | <a href="https://justauth.cn/" target="_blank">Just Auth</a> | 1.16.5       | 开箱即用的整合第三方登录的开源组件,脱离繁琐的第三方登录 SDK,让登录变得 So easy! | | | <a href="https://justauth.cn/" target="_blank">Just Auth</a> | 1.16.5       | 开箱即用的整合第三方登录的开源组件,脱离繁琐的第三方登录 SDK,让登录变得 So easy! | | ||||||
| | <a href="https://easyexcel.opensource.alibaba.com/" target="_blank">Easy Excel</a> | 3.3.2        | 一个基于 Java 的、快速、简洁、解决大文件内存溢出的 Excel 处理工具。 | | | <a href="https://easyexcel.opensource.alibaba.com/" target="_blank">Easy Excel</a> | 3.3.2        | 一个基于 Java 的、快速、简洁、解决大文件内存溢出的 Excel 处理工具。 | | ||||||
|   | |||||||
| @@ -1,9 +1,9 @@ | |||||||
| version: '3' | version: '3' | ||||||
| services: | services: | ||||||
|   mariadb: |   mysql: | ||||||
|     image: mariadb |     image: mysql:8.0.33 | ||||||
|     restart: always |     restart: always | ||||||
|     container_name: mariadb |     container_name: mysql | ||||||
|     ports: |     ports: | ||||||
|       - '3306:3306' |       - '3306:3306' | ||||||
|     environment: |     environment: | ||||||
| @@ -14,8 +14,14 @@ services: | |||||||
|       #MYSQL_USER: 你的数据库用户名 |       #MYSQL_USER: 你的数据库用户名 | ||||||
|       #MYSQL_PASSWORD: 你的数据库密码 |       #MYSQL_PASSWORD: 你的数据库密码 | ||||||
|     volumes: |     volumes: | ||||||
|       - /docker/mysql/conf:/etc/mysql |       - /docker/mysql/conf/:/etc/mysql/conf.d/ | ||||||
|       - /docker/mysql/data:/var/lib/mysql |       - /docker/mysql/data/:/var/lib/mysql/ | ||||||
|  |     command: | ||||||
|  |       --default-authentication-plugin=mysql_native_password | ||||||
|  |       --character-set-server=utf8mb4 | ||||||
|  |       --collation-server=utf8mb4_general_ci | ||||||
|  |       --explicit_defaults_for_timestamp=true | ||||||
|  |       --lower_case_table_names=1 | ||||||
|   redis: |   redis: | ||||||
|     image: redis:7.2.3 |     image: redis:7.2.3 | ||||||
|     restart: always |     restart: always | ||||||
| @@ -26,9 +32,9 @@ services: | |||||||
|       TZ: Asia/Shanghai |       TZ: Asia/Shanghai | ||||||
|     volumes: |     volumes: | ||||||
|       - /docker/redis/conf/redis.conf:/usr/local/redis/config/redis.conf |       - /docker/redis/conf/redis.conf:/usr/local/redis/config/redis.conf | ||||||
|       - /docker/redis/data:/data |       - /docker/redis/data/:/data/ | ||||||
|       - /docker/redis/logs:/logs |       - /docker/redis/logs/:/logs/ | ||||||
|     command: 'redis-server /usr/local/redis/config/redis.conf --appendonly yes --requirepass 123456' |     command: 'redis-server /usr/local/redis/config/redis.conf --appendonly yes --requirepass 你的 Redis 密码' | ||||||
|   continew-admin-server: |   continew-admin-server: | ||||||
|     build: ./continew-admin |     build: ./continew-admin | ||||||
|     restart: always |     restart: always | ||||||
| @@ -47,14 +53,14 @@ services: | |||||||
|       REDIS_PWD: 你的 Redis 密码 |       REDIS_PWD: 你的 Redis 密码 | ||||||
|       REDIS_DB: 你的 Redis 数据库索引 |       REDIS_DB: 你的 Redis 数据库索引 | ||||||
|     volumes: |     volumes: | ||||||
|       - /docker/continew-admin/config:/app/config |       - /docker/continew-admin/config/:/app/config/ | ||||||
|       - /docker/continew-admin/data/file:/app/data/file |       - /docker/continew-admin/data/file/:/app/data/file/ | ||||||
|       - /docker/continew-admin/data/avatar:/app/data/avatar |       - /docker/continew-admin/data/avatar/:/app/data/avatar/ | ||||||
|       - /docker/continew-admin/logs:/app/logs |       - /docker/continew-admin/logs/:/app/logs/ | ||||||
|       - /docker/continew-admin/lib:/app/lib |       - /docker/continew-admin/lib/:/app/lib/ | ||||||
|     depends_on: |     depends_on: | ||||||
|       - redis |       - redis | ||||||
|       - mariadb |       - mysql | ||||||
|   nginx: |   nginx: | ||||||
|     image: nginx:1.25.3 |     image: nginx:1.25.3 | ||||||
|     restart: always |     restart: always | ||||||
| @@ -66,6 +72,7 @@ services: | |||||||
|       TZ: Asia/Shanghai |       TZ: Asia/Shanghai | ||||||
|     volumes: |     volumes: | ||||||
|       - /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf |       - /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf | ||||||
|       - /docker/nginx/cert:/etc/nginx/cert |       - /docker/nginx/cert/:/etc/nginx/cert/ | ||||||
|       - /docker/continew-admin/web:/usr/share/nginx/html |       - /docker/nginx/logs/:/var/log/nginx/ | ||||||
|       - /docker/nginx/logs:/var/log/nginx |       # 前端页面目录 | ||||||
|  |       - /docker/continew-admin/html/:/usr/share/nginx/html/ | ||||||
|   | |||||||
| @@ -32,7 +32,6 @@ http { | |||||||
|         server_name  api.charles7c.top; |         server_name  api.charles7c.top; | ||||||
|  |  | ||||||
|         # 证书直接存放 /docker/nginx/cert 目录下即可(更改证书名称即可,无需更改证书路径) |         # 证书直接存放 /docker/nginx/cert 目录下即可(更改证书名称即可,无需更改证书路径) | ||||||
|         ssl on; |  | ||||||
|         ssl_certificate      /etc/nginx/cert/xxx.local.pem; # /etc/nginx/cert/ 为 docker 映射路径 不允许更改 |         ssl_certificate      /etc/nginx/cert/xxx.local.pem; # /etc/nginx/cert/ 为 docker 映射路径 不允许更改 | ||||||
|         ssl_certificate_key  /etc/nginx/cert/xxx.local.key; # /etc/nginx/cert/ 为 docker 映射路径 不允许更改 |         ssl_certificate_key  /etc/nginx/cert/xxx.local.key; # /etc/nginx/cert/ 为 docker 映射路径 不允许更改 | ||||||
|         ssl_session_timeout 5m; |         ssl_session_timeout 5m; | ||||||
| @@ -67,7 +66,6 @@ http { | |||||||
|         server_name  cnadmin.charles7c.top; |         server_name  cnadmin.charles7c.top; | ||||||
|  |  | ||||||
|         # 证书直接存放 /docker/nginx/cert 目录下即可(更改证书名称即可,无需更改证书路径) |         # 证书直接存放 /docker/nginx/cert 目录下即可(更改证书名称即可,无需更改证书路径) | ||||||
|         ssl on; |  | ||||||
|         ssl_certificate      /etc/nginx/cert/xxx.local.pem; # /etc/nginx/cert/ 为 docker 映射路径 不允许更改 |         ssl_certificate      /etc/nginx/cert/xxx.local.pem; # /etc/nginx/cert/ 为 docker 映射路径 不允许更改 | ||||||
|         ssl_certificate_key  /etc/nginx/cert/xxx.local.key; # /etc/nginx/cert/ 为 docker 映射路径 不允许更改 |         ssl_certificate_key  /etc/nginx/cert/xxx.local.key; # /etc/nginx/cert/ 为 docker 映射路径 不允许更改 | ||||||
|         ssl_session_timeout 5m; |         ssl_session_timeout 5m; | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| bind 0.0.0.0 | bind 0.0.0.0 | ||||||
| # redis 密码 | # redis 密码 | ||||||
| requirepass 123456 | requirepass 你的 Redis 密码 | ||||||
|  |  | ||||||
| # key 监听器配置 | # key 监听器配置 | ||||||
| # notify-keyspace-events Ex | # notify-keyspace-events Ex | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user