前言
本文主要内容: 部署 Jeepay step by step
官方教程 https://docs.jeequan.com/docs/jeepay/deploy
服务器配置
-
购买阿里云服务器 4 核 8G AlmaLinux9.5
-
登录服务器
-
初始化/安装宝塔面板
yum install -y wget && wget -O install.sh https://download.bt.cn/install/install_6.0.sh && sh install.sh
-
配置阿里云安全组,开放宝塔面板的端口
-
-
登录宝塔面板, 绑定宝塔帐号后进入后台
安装Jeepay依赖软件
在宝塔面板安装需要依赖的软件
- JDK 1.8:
dnf install java-1.8.0-openjdk
- 安装maven:
dnf install maven
- Redis:点击数据库 - Redis - 安装 redis 环境
- Mysql 5.7:点击数据库 - Mysql - 安装数据库
- Nginx:点击网站 - 反向代理 - 安装 Nginx
- 安装 git:
dnf install -y git
安装配置RabbitMQ
也可使用ActiveMQ 或RocketMQ,这里是考虑到在单机上使用安装便捷性以及资源占用量
RabbitMQ 官方安装教程:在基于 RPM 的 Linux 上安装,这里使用的是官方推荐的使用Cloudsmith.io镜像中的 Yum 存储库安装软件包
导入签名密钥
# 如果下载不了,可以在本地下载后传到服务器
rpm --import 'https://github.com/rabbitmq/signing-keys/releases/download/3.0/rabbitmq-release-signing-key.asc'
rpm --import 'https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-erlang.E495BB49CC4BBE5B.key'
rpm --import 'https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-server.9F4587F226208342.key'
添加repo文件
新建/etc/yum.repos.d/rabbitmq.repo
,输入下面的内容
# In /etc/yum.repos.d/rabbitmq.repo
##
## Zero dependency Erlang RPM
##
[modern-erlang]
name=modern-erlang-el9
# Use a set of mirrors maintained by the RabbitMQ core team.
# The mirrors have significantly higher bandwidth quotas.
baseurl=https://yum1.rabbitmq.com/erlang/el/9/$basearch
https://yum2.rabbitmq.com/erlang/el/9/$basearch
repo_gpgcheck=1
enabled=1
gpgkey=https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-erlang.E495BB49CC4BBE5B.key
gpgcheck=1
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
pkg_gpgcheck=1
autorefresh=1
type=rpm-md
[modern-erlang-noarch]
name=modern-erlang-el9-noarch
# Use a set of mirrors maintained by the RabbitMQ core team.
# The mirrors have significantly higher bandwidth quotas.
baseurl=https://yum1.rabbitmq.com/erlang/el/9/noarch
https://yum2.rabbitmq.com/erlang/el/9/noarch
repo_gpgcheck=1
enabled=1
gpgkey=https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-erlang.E495BB49CC4BBE5B.key
https://github.com/rabbitmq/signing-keys/releases/download/3.0/rabbitmq-release-signing-key.asc
gpgcheck=1
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
pkg_gpgcheck=1
autorefresh=1
type=rpm-md
[modern-erlang-source]
name=modern-erlang-el9-source
# Use a set of mirrors maintained by the RabbitMQ core team.
# The mirrors have significantly higher bandwidth quotas.
baseurl=https://yum1.rabbitmq.com/erlang/el/9/SRPMS
https://yum2.rabbitmq.com/erlang/el/9/SRPMS
repo_gpgcheck=1
enabled=1
gpgkey=https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-erlang.E495BB49CC4BBE5B.key
https://github.com/rabbitmq/signing-keys/releases/download/3.0/rabbitmq-release-signing-key.asc
gpgcheck=1
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
pkg_gpgcheck=1
autorefresh=1
##
## RabbitMQ Server
##
[rabbitmq-el9]
name=rabbitmq-el9
baseurl=https://yum2.rabbitmq.com/rabbitmq/el/9/$basearch
https://yum1.rabbitmq.com/rabbitmq/el/9/$basearch
repo_gpgcheck=1
enabled=1
# Cloudsmith's repository key and RabbitMQ package signing key
gpgkey=https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-server.9F4587F226208342.key
https://github.com/rabbitmq/signing-keys/releases/download/3.0/rabbitmq-release-signing-key.asc
gpgcheck=1
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
pkg_gpgcheck=1
autorefresh=1
type=rpm-md
[rabbitmq-el9-noarch]
name=rabbitmq-el9-noarch
baseurl=https://yum2.rabbitmq.com/rabbitmq/el/9/noarch
https://yum1.rabbitmq.com/rabbitmq/el/9/noarch
repo_gpgcheck=1
enabled=1
# Cloudsmith's repository key and RabbitMQ package signing key
gpgkey=https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-server.9F4587F226208342.key
https://github.com/rabbitmq/signing-keys/releases/download/3.0/rabbitmq-release-signing-key.asc
gpgcheck=1
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
pkg_gpgcheck=1
autorefresh=1
type=rpm-md
[rabbitmq-el9-source]
name=rabbitmq-el9-source
baseurl=https://yum2.rabbitmq.com/rabbitmq/el/9/SRPMS
https://yum1.rabbitmq.com/rabbitmq/el/9/SRPMS
repo_gpgcheck=1
enabled=1
gpgkey=https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-server.9F4587F226208342.key
gpgcheck=0
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
pkg_gpgcheck=1
autorefresh=1
type=rpm-md
使用 dnf 安装 erlang和RabbitMQ
dnf update -y
dnf install -y logrotate
dnf install -y erlang rabbitmq-server
启动 RabbitMQ
-
systemctl enable rabbitmq-server systemctl start rabbitmq-server
配置 RabbitMQ
服务端部署
编译
-
下载代码
git clone https://gitee.com/jeequan/jeepay.git
-
cd jeepay
-
编译
mvn package
初始化数据库
进入宝塔面板,点击数据库 - 添加数据库
打开数据库备份功能
合并两个 sql 文件
cd jeepay/docs/sql
cat init.sql > all.sql
cat patch.sql >> all.sql
在新建的数据库上点击导入,从本机导入 ,docs/sql/all.sql
创建程序运行用户及目录
# 创建用户
useradd jeepay
# 切换用户
su jeepay
# 进入目录
cd /home/jeepay/
# 创建目录service和upload
mkdir service && mkdir upload
# 进入到service目录下
cd /home/jeepay/service
# 创建目录manager,merchant,payment
mkdir manager && mkdir merchant && mkdir payment
# 将上面编译后的.jar文件分别传入对应的目录中