快速开始 - SanShanYouJiu/sanshanblog GitHub Wiki

后台启动

需要如下环境

  1. JDK1.8
  2. Mysql
  3. RabbitMQ
  4. Redis
  5. mongoDB
  6. elasticsearch

第一步 先导入相关的mysql-init.sql

分别为 sanshan-auth-server 模块下的sanshan_auth.sql sanshan-main-web 模块下的sanshan_main.sql sanshan-control下的子模块sanshan-trace模块下的init.sql

第二步

启动redis rabbitmq-server mongodb

将elasticsearch配置完毕后 推荐配置ik分词器

第三步 启动项目

注意要安装lombok插件 不然会提示代码缺失

依次启动main类 CenterBootstrap,ConfigServerBootstrap, AuthBootstrap,MainBootstrap,SearchBootstrap, GateBootstrap

前端启动

npm安装angular-cli 然后npm install安装需要的依赖

注意 npm install之后 还需要单独 npm install [email protected] --save 方能启动 这是一个未知的原因导致的

然后在前端项目文件夹下通过ng server 启动

注意 前端如果需要单独启动 需要在nginx配置完毕之后启动方可以 因为需要用到nginx中的静态文件

代理端

需要安装nginx 以及在nginx中的html文件夹下解压assets.tar.gz文件

该文件中有网站相关的静态文件

配置nginx

nginx配置文件如下:

    worker_processes  auto;
    events {
            worker_connections  768;
    }
    
    error_log  logs/error.log;
    
    http {
        include       mime.types;
        default_type  application/octet-stream;
    
        log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                          '$status $body_bytes_sent "$http_referer" '
                          '"$http_user_agent" "$http_x_forwarded_for"';
    
        #access_log  logs/access.log  main;
    
        sendfile        on;
    
        #keepalive_timeout  0;
        keepalive_timeout  65;

        server {
            listen       80;
            server_name  localhost;
    
            root html; 
        
            #sendfile 指令指定 nginx 是否调用 sendfile 函数(zero copy 方式)来输出文件,
            #对于普通应用,必须设为 on,
            #如果用来进行下载等应用磁盘IO重负载应用,可设置为 off,
            #以平衡磁盘与网络I/O处理速度,降低系统的uptime.		
            sendfile   on;

            gzip on;
            gzip_min_length 1k;
            gzip_buffers 4 16k;
            #gzip_http_version 1.0;
            gzip_comp_level 2;
            gzip_types text/plain  application/javascript  	 application/x-javascript text/css application/xml text/javascript image/jpeg image/gif image/png application/json;

           location / {
               #root html/dist;
               proxy_pass http://127.0.0.1:4200;
                #index  index.html;
                add_header X-Slave $upstream_addr;
            }
             
            location /assets/plugins {
                expires  30d;     
            }
            
            location ~.*\.(jpg|png|jpeg)$ {  
              expires 30d;  
           
           }  

            location /api {
               proxy_pass http://127.0.0.1:8080;
               add_header X-Slave $upstream_addr;
               proxy_set_header Host $host;  
               proxy_set_header X-Real-IP $remote_addr;  
               proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
           }        
               error_page  404              /;
               error_page   500 502 503 504  /50x.html;
      
            location = /50x.html {
               root   html;
            }

        }
    }

接下来就你可以访问localhost查看demo了