Coder Social home page Coder Social logo

backup53 / 2049bbs Goto Github PK

View Code? Open in Web Editor NEW

This project forked from terminus2049/2049bbs

1.0 0.0 0.0 610 KB

自由人的精神角落,一个无需手机号和邮箱即可发言的论坛。

Home Page: https://2049bbs.xyz/

License: MIT License

Dockerfile 0.03% Makefile 0.02% Go 38.06% CSS 15.19% JavaScript 3.67% HTML 43.04%

2049bbs's Introduction

2049bbs,一个无需手机号和邮箱即可注册发言的论坛。Fork 自 goyoubbs

本地开发

安装 go,然后 clone 本仓库。

go get -v github.com/terminus2049/2049bbs
  1. 然后 cd 到相应目录,一般是 go/src/github.com/terminus2049/2049bbs
go run main.go

然后在浏览器打开 127.0.0.1:8082 即可,或者直接编译,运行 sudo ./2049bbs

  1. 利用 Docker 进行开发
  • 首先安装 Docker 及 docker-compose
  • 将本项目 clone 到本地,任何目录均可
  • 进入项目目录,在安装好 docker 及 docker-compose 后,运行脚本 make dev 即自动拉去构建好的镜像
  • 运行成功后 docker ps 即可发现名为 bbs 的容器正在运行中
machine: 2049BBS % docker ps
CONTAINER ID        IMAGE                                                                       COMMAND                  CREATED             STATUS              PORTS                    NAMES
d798030a6f0f        docker.pkg.github.com/speechfree/go-base/go-base:base                       "tail -f /dev/null"      About an hour ago   Up About an hour    0.0.0.0:8000->8082/tcp   bbs
  • 然后,docker exec -it bbs bash 进入到容器中,通过 dep ensure 拉去项目依赖到本地目录 vendor
  • 完成后运行 go run main.go 若出现如下输出即表明项目运行成功
2019/12/20 13:23:07 MainDomain: http://127.0.0.1:8082
2019/12/20 13:23:07 youdb Connect to mydata.db
2019/12/20 13:23:07 Web server Listen port 8082
  • 在宿主机打开任意浏览器输入 http://localhost:8000 即可看到构建成功的应用。
  • 另,在开发过程中,为了方便修改代码后重载应用,可以通过 realize start 启动应用,则修改任何 Golang 代码,其均会自动构建加载。

数据库

如果没有 kv 数据库开发经验,最好在程序跑起来后,用 boltdbweb 打开数据库文件 mydata.db,了解一下内部存储结构。

部署

编译二进制文件 go build非 Linux 平台为交叉编译 GOOS=linux GOARCH=amd64 go build,由于使用了 gojieba 分词引擎,不能跨平台编译,请使用在线api功能、移除相关组件后再尝试跨平台编译。

将编译好的二进制文件与 config、static 和 view 三个文件夹的文件放在同一个文件夹内,运行 ./2049bbs

服务器配置:在生产环境中,建议打开 https,把 config.yamlHttpsOn: false 改为 true。也可以自行申请 cloudflare 证书,相应配置可以参考 config-2049.yaml.

备份

需要备份 mydata.db/static/avatar 文件。

2049bbs's People

Contributors

terminusbot avatar

Stargazers

 avatar

2049bbs's Issues

Issue 备份

Terminus2049#2

主页首答审核功能

在主页发布或回帖的首个内容需要审核,审核通过后方可在主区正常使用。

Terminus2049#2

@archivebot 存档网页

只是一个奇思妙想,大概率不会实现。
在2049bbs中,只要@archivebot 并附上网址,即可存档至 archive.today 和 archive.org

Terminus2049#18

添加不顶帖不折叠用户组

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.