利用开源软件打造一个团队贡献平台

0x00 前言

  最初的想法是打造一个团队内部社区,方便进行技术交流、沉淀、分享。在网络上,找到了一款开源系统,开源团队内部贡献平台Mooder,很大程度上满足了这样一个需求。Mooder的核心理念的“贡献知识“,是我最认可的地方,系统简约、强大,以及它的邀请码机制、奖励机制,一句话来说,就是很wooyun的样子。

0x01 源码安装

Mooder是一款开源、安全、简洁、强大的团队内部知识分享平台。

github地址:https://github.com/phith0n/mooder.git

源码安装说明:https://phith0n.github.io/mooder/install/install-from-source/

  基本上参考源码安装说明安装即可,后面重点说一下部署,生产环境下不建议直接使用Django自带的Webserver,之前没部署过Django,其实也不难,但就是折腾了两天才搞定。。

使用Django自带的Webserver试运行一下:

sudo python ./manage.py runserver 0.0.0.0:80
#以上命令会将mooder运行在80端口。

0x02 使用nginx+uwsgi部署

1、uwsgi安装

sudo apt-get install python3-dev

sudo pip install uwsgi

测试uwsgi,创建test.py文件:

def application(env, start_response):
    start_response('200 OK', [('Content-Type','text/html')])
    return [b"Hello World"]

通过uwsgi运行该文件

sudo uwsgi --http :8000 --wsgi-file test.py

这时候,可以通过这条命令来试运行mooder项目:

sudo uwsgi --http :8090 --chdir /mooder  --module mooder.wsgi

另外也可以通过配置文件来运行,创建myweb_uwsgi.ini配置文件:

[uwsgi]
socket = :8022
chdir = /mooder
module = mooder.wsgi
master = true
processes = 4
vacuum = true

sudo uwsgi --ini myweb_uwsgi.ini #启动uwsgi

2、nginx安装部署

sudo apt-get install nginx #安装
sudo service nginx start   #启动
修改nginx.conf,这边的代理端口与上面配置文件要一致。
server {
    listen         80; 
    server_name    127.0.0.1 
    charset UTF-8;
    access_log      /var/log/nginx/myweb_access.log;
    error_log       /var/log/nginx/myweb_error.log;
    client_max_body_size 75M;
    location / { 
        include uwsgi_params;
        uwsgi_pass 127.0.0.1:8022;
        uwsgi_read_timeout 2;
    }   
    location /static {
        expires 30d;
        autoindex on; 
        add_header Cache-Control private;
        alias /mooder/mooder/static_cdn/;
     }
 }

3、部署完成

  sudo service nginx restart #重启nginx

查看后台管理

0x03 END

  团队贡献平台搭建起来,运行和维护就很简单了,但最重要的是运营,如何能够凝聚每一个团队成员,营造一个良好的技术氛围。

一个良好的氛围是培养人才最好的土壤,这才是值得思考的问题。

本文分享自微信公众号 - Bypass(Bypass--)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-09-25

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏前端成长之路

mac 添加环境变量

其中a和b是系统级别的,系统启动就会加载,其余是用户接别的。c,d,e按照从前往后的顺序读取,如果c文件存在,则后面的几个文件就会被忽略不读了,以此类推。~/....

28100
来自专栏悠扬前奏的博客

多台Linux服务器执行同样的命令

在Spark安装和运行时,比如zkServer.sh start这样的命令是需要所有服务器执行的,一个个复制粘贴回车肯定不够优雅,找个shell解决这个问题:

18120
来自专栏程序员的成长之路

必会的 24 道 Shell 脚本面试题

虽然现在 Python 在运维工作中已经使用很普遍,但是很多企业在找 Linux 云计算工程师的时候还是会问到 shell 脚本的问题,它有助于你在工作环境中自...

29130
来自专栏运维经验分享

ssh,scp带密码操作

sshpass -p "mima" ssh root@localhost                                 --------参数小...

1.3K20
来自专栏Y大宽

从ncbi下载sra数据的几种种方式

为了加快速度先下载aspera并添加环境变量,具体看以前的内容 下载sra toolkit加环境变量 下载EDirect 用yeast的几个数据说明

67630
来自专栏Flink实战应用指南

Flink Forward 2019--实战相关(3)--Airbnb公司整合Flink与AirStream

Building production Flink jobs with Airstream at Airbnb

14620
来自专栏小樱的经验随笔

Mac下安装npm全局包提示权限不够

Mac OS下安装npm的全局包,总是出现如下提示Missing write access,需要提升权限才能继续。

38230
来自专栏运维经验分享

scp 命令 不用手动输入密码

 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wowocpp/article/details/795390...

73930
来自专栏悠扬前奏的博客

一次向多台Linux机器scp传输(水)

在Spark安装和运行时,各种配置文件需要向所有服务器发送,一个个执行SCP肯定不够优雅,做个shell解决这个问题:

16530
来自专栏kubernetes中文社区

kubernetes从懵圈到熟练 – 集群伸缩原理

阿里云K8S集群的一个重要特性,是集群的节点可以动态的增加或减少。有了这个特性,集群才能在计算资源不足的情况下扩容新的节点,同时也可以在资源利用率降低的时候,释...

13030

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励