Skip to content

Latest commit

 

History

History
209 lines (158 loc) · 7.93 KB

OPEN_PRE.md

File metadata and controls

209 lines (158 loc) · 7.93 KB

首先感谢大家对Smart Shop支持与耐心等待,Smart Shop商城于9月4日正式开源,小伙伴们赶快来围观吧

近期我们会陆续开放文档及其代码供大家提前熟悉准备

Smart Shop商城使用前置条件

  1. 营业执照
  2. 备案域名一个(小程序上线)
  3. 认证微信小程序一个
  4. 商家支付证书(包含支付和退款)
  5. Linux服务器一台 (部署项目)
  6. 微信开放平台第三方平台(第一次认证需花费300元)
  7. 微信开放平台网站应用 (pc端调取二维码扫码认证使用)

微信开放平台网站应用申请

微信开放平台网址:https://open.weixin.qq.com

1.创建网站应用 输入图片说明

  • 注:微信开放平台网站信息登记表需要盖公章,填写要规范
  • 回调域名:填写网站要使用的域名即:nginx配置的城市合伙人访问地址
  • 网站应用需要获得微信登入权限:(微信登入权限在账号中心认证开发者资质认证)

2.创建第三方平台

选择第三方平台 选择平台型服务商 创建后授权信息展示样式
输入图片说明 输入图片说明 输入图片说明
  • 注:平台类型为【平台型服务商】
  • 选择权限:小程序或公众号可按需求勾选
  • 授权发起页域名:部署项目的域名
  • 授权测试公众号/小程序列表:小程序原始id
  • 授权事件接收URL:域名/api/platform/notify/receive_ticket
  • 消息校验Token:superprism(可自定义)
  • 消息加解密Key:43位
  • 消息与事件接收URL:域名/api/platform/notify/$APPID$/callback
  • 小程序服务器域名:填写服务器域名
  • 小程序业务域名:业务域名
  • 白名单IP地址列表:服务器ip

相关应用安装

  • Htop

  • nacos

  • nginx

  • nexus

  • docker

  • Harbor

  • Mysql

  • Redis

  • rabbitmq

  • jenkins

  • JDK

  • xxl-job-admin

  • Htop(视图化top) 可装可不装

     yum -y install epel-release
     yum -y install htop
     https://www.cnblogs.com/zangfans/p/8595000.html 
    
  • Nginx web代理

      yum install nginx-1.16.1
    
  • Nacos

       解压 tar.gz
       移动到bin目录下  cd /nacos/bin 
       单机版启动 :sh startup.sh -m standalone    
       访问 :ip:8848/nacos   
              user :nacos
              pwd:nacos
       如需使用数据库进行配置请执行初始化sql及更改配置
       /nacos/conf/nacos-mysql.sql
       /nacos/conf/application.properties.example
      注:nacos密码有进行加密 要自己生成一个
          org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder
          String pwd = new BCryptPasswordEncoder().encode("123456");
    

nacos数据库配置

  • Docker

      sudo wget -qO- https://get.docker.com | sh
      版本查看 : docker version
      启动     : service docker start
      存储查看 :  docker info
      镜像源修改 : vim /etc/docker/daemon.json
      docker重启 :
                  systemctl daemon-reload 守护线程
                  systemctl restart docker 重启docker
      详细使用请大家自行百度。如遇问题可加入qq群,会有专人解答
    
  • Harbor docker视图化仓库

      解压zip 
      修改相关配置
      启动  :    ./install.sh
      查看  :   docker ps
    
  • Mysql

      请大家自行安装 如遇问题可加入qq群,会有专人解答 5.7版本及以上
    
  • Redis

      请大家自行安装 如遇问题可加入qq群,会有专人解答
    
  • rabbitmq

      因使用延迟队列,我们提供专门docker镜像
      docker pull xiaoq123/mq-image:3.8
      docker run -d -p 15672:15672 -p 5672:5672  --name rabbitmq --restart always -e RABBITMQ_DEFAULT_USER=用户名 -e RABBITMQ_DEFAULT_PASS=密码 
      xiaoq123/mq-image:3.8
    
  • xxl-job-admin

      因版本变动过大,我们提供专门docker镜像
      docker pull xiaoq123/xxl-job-image:2.1.1
      docker run -e PARAMS="--spring.datasource.url=jdbc:mysql://数据库地址?Unicode=true&characterEncoding=UTF-8 --spring.datasource.username=数据库账号--spring.datasource.password=数据库密码 " -p 9010:8080 -v /tmp:/data/applogs --name xxl-job-admin  --privileged=true -d xiaoq123/xxl-job-image:2.1.1
    
  • zip压缩包获取

      链接:https://pan.baidu.com/s/1rXzEYl_Korj9T27ptplRbA 
      提取码:64s1 
      --来自百度网盘超级会员V4的分享      
       
      安装过程中出现问题或疑惑可加入qq群探讨
    

项目启动前 需要安装完成 Nacos Nexus Docker Mysql Redis rabbitmq xxl-job-admin

项目上线前 需要安装完成 Nacos Nexus Docker Mysql Redis rabbitmq xxl-job-admin Jenkins Nginx Harbor JDK 
如有疑问可加入qq群进行沟通

项目介绍

    gruul 
    account-open                    用户服务
    platform-open                   平台服务
    gruul-sms-open                  短信服务
    grull-oss-open                  oss存储服务(内存不足时可优先考虑进行合并)
    gruul-afs-open                  售后服务
    gruul-goods-open                商品服务
    gruul-order-open                订单服务
    gruul-shops-open                店铺服务
    grull-payment-open              支付服务
    gruul-gateway-open              网关服务
    gruul-discount-open             抵扣服务
    gruul-logistics-open            物流服务

nginx配置

nginx使用教程请参考 Nginx中文文档 (https://www.nginx.cn/doc/)

  server {
    listen 80;
    listen [::]:80;
    server_name 域名;
    return 301 https://域名/$request_uri;
  }
  server{
    listen 443 ssl ;
    listen [::]:443 ssl ;
    server_name 域名;
    #SSL
    ssl_certificate /etc/nginx/ssl/域名证书.crt;
    ssl_certificate_key /etc/nginx/ssl/域名证书.key;
    ssl_session_timeout 5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
    ssl_prefer_server_ciphers on;

     #后端接口
    location /api/ {
      if ($request_method = OPTIONS ) {
          add_header Access-Control-Allow-Origin "*";
          add_header Access-Control-Allow-Methods "POST, GET, PUT, OPTIONS, DELETE, HEAD";
          add_header Access-Control-Max-Age "3600";
          add_header Access-Control-Allow-Headers "DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorizationi, *";
          add_header Access-Control-Allow-Credentials "true";
          add_header Content-Length 0;
          add_header Content-Type text/plain;
          return 204;
      }

       add_header 'Access-Control-Allow-Origin' "*";
       add_header 'Access-Control-Allow-Methods' 'POST, GET, PUT, OPTIONS, DELETE, HEAD';
       add_header 'Access-Control-Allow-Headers' 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization,*';
       add_header 'Access-Control-Allow-Credentials' 'true';
       add_header Access-Control-Max-Age "3600";
       proxy_set_header Upgrade $http_upgrade;
       proxy_set_header Connection "upgrade";
       proxy_pass http://127.0.0.1:10999/;
    }
   }