最近国内经常访问不了v2ex,无论是电信联通移动都打不开,借此机会搭个v2ex论坛岂不美哉 就没有人想仿个v2ex顶走排名吗 当然我用的这个程序并不是v2ex官方用的那个,高仿,他的功能方面和v2ex原版差不多 有前后端 前端casnode https://github.com/casbin/casnode 后端casdoor https://github.com/casbin/casdoor 需要先部署后端再部署前端,后端casdoor支持多个站点同时使用 先上图 轻量 选择宝塔镜像可以方便后面守护进程之类的问题,还能省去安装宝塔的时间,还可以在宝塔上修改配置文件 顺带重置一下密码,可以用宝塔的ssh,不需要再用ssh软件了 废话不多说直接开始具体需要 后端casdoor+前端casnode+mysql+nginx+golang+nodejs 打开宝塔后先选择安装四件套 先把文件clone下来(轻量宝塔自带git)
casdoor git clone https://github.com/casbin/casdoorcasnode git clone https://github.com/casbin/casnode 国内机
casdoor git clone https://hub.fastgit.org/casbin/casdoorcasnode git clone https://hub.fastgit.org/casbin/casnode 环境 他需要golang和nodejs,因为yum的源直接下的太老,会出现问题,所以我建议手动装 go wget https://studygolang.com/dl/golang/go1.15.linux-amd64.tar.gzsudo tar -C /usr/local -xzf go1.15.linux-amd64.tar.gz 添加环境变量 都有宝塔了要什么自行车 在宝塔打开 /etc/profile,底部加两行
export PATH=$PATH:/usr/local/go/bin 在ssh输入 source /etc/profile 现在,输入go version,你将看到go版本 则安装成功.如果 你无法连接github,可以设置镜像,命令为
go env -w GOPROXY=https://goproxy.cn,direct nodejs wget https://mirrors.tuna.tsinghua.ed … linux-x64.tar.xztar -xvf node-v15.1.0-linux-x64.tar.xzcd /usr/local/mv /root/node-v15.1.0-linux-x64 . //后面的.表示移动到当前目录mv node-v15.1.0-linux-x64/ nodejs 再次编辑/etc/profile,加入
export PATH=$PATH:/usr/local/nodejs/bin source /etc/profile 测试是否安装成功
node -v npm -v 顺便创建两个数据库 构建casdoor 先用go吧main文件构建出来
cd casdoor go build main.go 与此同时编辑 /root/casdoor/conf里的app.conf 用刚才创建的mysql数据库
dataSourceName = 数据库名:密码@tcp(localhost:3306)/dbName = 用户名 构建完成后
cd web npm install npm run build 如果提示run `npm audit fix` to fix them, or `npm audit` for details 那就直接
npm audit fix 至此后端casdoor已经构建完成 可以运行后端看看了
cd …/main 轻量和宝塔防火墙开启8000端口 访问http://ip:8000既可看到后端 默认账号admin,密码123 当然要先为Casnode进行配置 点击组织—添加 修改名称为你想要的组织名,然后点击保存 点击应用,然后点击添加,对刚添加的应用点击修改,修改name为你想要的应用名 保存clientId和clientSecret,后面要用 修改组织,选择刚刚添加的组织; 点 击回调URLs,将框中链接修改为http://ip:7000/callback 点击 Save 点击用户,添加,然后修改添加的用户,点击组织,选择刚刚添加的组织 经过了一顿瞎几把操作之后,可以构建另一个端了 casnode 还是一样先把main构建出来
cd casnode go build main.go 与此同时编辑 /root/casnode/conf里的app.conf
dataSourceName = 数据库名:密码@tcp(localhost:3306)/dbName = 用户名之前记住的clientId和clientSecretclientId =clientSecret = 然后 web/src/下有个 Conf.js 需要修改将serverUrl修改为http://ip:7000(Casdoor 前端访问地址),将clientId修改为刚刚记录的应用的 clientId,将appname修改为设置的应用名,将organization修改为设置的组织名 (本来我已经构建好了,结果发现作者把这部分改了) 然后
cd webnpm installnpm run build 低配机构建需要很久,建议先恰个饭再来看 完事后
cd …/main 轻量和宝塔放行7000端口 http://your-ip:7000 自此已经搭建完成。 守护进程 在宝塔安装PM2管理器 casdoor一定要使用root用户运行。 至于要上域名,需要用nginx反向代理。 官方也没有过多解释,这方面得你们自己设置了 如果网站 访问量大可以配置oss 可以配置多个登陆方式比如github,QQ,微信,Google 也支持Mail and SMS services 登陆的界面设置的是casdoor的,他的css可以自己改,会写css可以改成仿v2ex的 当然建议使用>2h4g的服务器,不然负载有点高 最后 安利一下 【腾讯云】云产品限时秒杀,爆款1核2G云服务器,首年99元 https://cloud.tencent.com/act/cps/redirect?redirect=1077&cps_key=53aac6e0a9982e4830a8662f95a40c8d&from=console
|
评论前必须登录!
注册