update README.md
This commit is contained in:
parent
3526fc9944
commit
3952dd53d5
150
README.md
150
README.md
|
@ -1,14 +1,144 @@
|
|||
### 1. CodePedia相关
|
||||
|
||||
## 导入工程
|
||||
1.这个页面应该有权限控制,只允许特定的人访问
|
||||
2.最好在页面做一个提示(方便以后的人接手):
|
||||
在submit时,提示:正在导入工程,请勿关闭页面(问:如果关闭页面会有什么后果....)
|
||||
3.导入其实是在2个表中中insert,一个是Source Project,这是这个工程的大概介绍
|
||||
一个是Source File,这个表包含了工程对应的文件的具体路径,投票数,观看数等具体信息.
|
||||
4.最好选择的时候能够提供一个选择框,这样不会容易出错
|
||||
1. 进入服务器:ssh root@120.132.101.149 -p 22011 密码: code123!
|
||||
2. 进入mysql服务器: mysql -uroot -pcodepedia123
|
||||
|
||||
## 通过邮箱激活:
|
||||
1.django中已经有发送邮件的模块了:django.core.mail:https://docs.djangoproject.com/en/2.0/topics/email/
|
||||
- CodePedia的数据库为codepedia
|
||||
|
||||
问题:
|
||||
3. CodePedia项目在线地址:https://www.trustie.net/projects/4418/repository/codepedia2/revisions/master/show
|
||||
4. CodePedia项目服务器地址:/projects/codepedia/codepedia2
|
||||
|
||||
|
||||
|
||||
### 2. 启动服务
|
||||
|
||||
CodePedia的服务主要分为三个部分:
|
||||
|
||||
1. 主要服务:CodePedia主系统
|
||||
2. 跟标注竞赛用户排名相关: Redis服务
|
||||
3. 跟代码跳转、文件结构树相关的:OpenGrok服务
|
||||
|
||||
#### 2.1 CodePedia主系统启动
|
||||
|
||||
- 启动步骤:
|
||||
|
||||
1. `codepediahome` #进入codepedia项目根目录
|
||||
2. `service nginx start` #启动nginx
|
||||
3. `codepediarun` #启动codepedia
|
||||
|
||||
如果暂时关闭codepedia系统,执行 `service nginx stop`
|
||||
|
||||
- 校验方法
|
||||
|
||||
打开http://codepedia.trustie.net,如果能正常打开,则为启动成功。
|
||||
|
||||
#### 2.2 Redis服务启动
|
||||
|
||||
默认情况下Redis应该是已经启动了的,建议先校验
|
||||
|
||||
- 启动步骤:
|
||||
|
||||
1. `cd /redis-stable` #进入Redis根目录
|
||||
2. `nohup redis-server &`#后台运行Redis服务
|
||||
|
||||
- 校验方法
|
||||
|
||||
在终端输入: `redis-cli` ,如果进入了`127.0.0.1:6379>`则表示启动成功。
|
||||
|
||||
#### 2.3 OpenGrok服务启动
|
||||
|
||||
OpenGrok服务是借助Tomcat部署的,启动OpenGrok实际上是启动Tomcat
|
||||
|
||||
- 启动步骤:
|
||||
|
||||
1. `cd /opt/tomcat/bin/` #进入Tomcat的bin目录
|
||||
2. `./startup.sh` #启动Tomcat服务
|
||||
|
||||
- 校验方法
|
||||
|
||||
在浏览器打开: `http://codepedia.trustie.net:8080` ,如果正常进入现实Tomcat,则表示启动成功
|
||||
|
||||
|
||||
|
||||
### 3. 上传新的开源项目到CodePedia平台
|
||||
|
||||
1. 在服务器上克隆开源项目: 登录服务器,在`/opt/opengrok/source/`下将项目clone下来
|
||||
2. 使用OpenGrok构建索引: `cd /opt/opengrok/ && java -Xmx524m -jar lib/opengrok.jar -W "/opt/opengrok/data/configuration.xml" -P -S -v -s "/opt/opengrok/source" -d "/opt/opengrok/data"`
|
||||
3. 将开源项目的信息写入数据库:
|
||||
- 打开浏览器进入 http://codepedia.trustie.net/projects/new/
|
||||
- 填写表格,然后提交。请注意:
|
||||
1. 工程名字请务必保持与/opt/opengrok/source的项目名字保持一致
|
||||
2. 工程路径和工程名字一致(建议自己优化一下)
|
||||
3. 描述可以填写Github上项目自己的描述
|
||||
- 提交后,**不要关闭页面**, 等待直到页面完成跳转(此间会在后台一直开源项目的信息写入数据库,不要关闭的原因是防止表单重复提交)
|
||||
|
||||
|
||||
|
||||
### 4. 设置竞赛项目和竞赛文件
|
||||
|
||||
#### 4.1 竞赛策略说明:
|
||||
|
||||
| 策略 | 说明 |
|
||||
| ---- | ------------------ |
|
||||
| 0 | 注释所有人可见 |
|
||||
| 1 | 注释仅用户自己可见 |
|
||||
| 2 | 注释仅组内用户可见 |
|
||||
|
||||
一般而言,我们只会用到0和2
|
||||
|
||||
#### 4.2 竞赛项目、竞赛文件、竞赛策略设置
|
||||
|
||||
这个方式建议在上传新的竞赛开源项目后就设置完毕。示例:
|
||||
|
||||
http://codepedia.trustie.net/projects/set_competition_project?project_name=tensorflow&strategy=2&path=/tensorflow/core/kernels/rnn
|
||||
|
||||
上例将项目名为`tensorflow`下的`/tensorflow/core/kernels/rnn`下的所有文件设置为竞赛文件也就是对应了
|
||||
|
||||
http://codepedia.trustie.net/projects/tensorflow/tensorflow/core/kernels/rnn.
|
||||
|
||||
并且该竞赛项目的策略为2,也就是组内用户可见。
|
||||
|
||||
**注意:path设置为http://codepedia.trustie.net/projects/project-name后面的部分哟,要以`/`开始。**
|
||||
|
||||
而一般我们需要修改`project_name`、`strategy`以及`path`这三个参数。
|
||||
|
||||
#### 4.3 竞赛策略改变之数据库操作
|
||||
|
||||
初始化时还是使用4.2的方式,但是可能由于随着比赛的进行,竞赛策略会发生变化,建议直接修改数据库。(也可以写一个定时脚本定时修改,这个更方便)
|
||||
|
||||
对应数据库为: AnotationStrategy
|
||||
|
||||
|
||||
|
||||
### 5. 服务器迁移
|
||||
|
||||
#### 1. 迁移开发环境
|
||||
|
||||
- anaconda 环境迁移
|
||||
|
||||
建议直接将所有包迁移过去,而不要在线安装(但是直接拷贝肯定不行,因为有些包直接通过pip install -r requirement会安装不成功)
|
||||
|
||||
- 可能有用的链接: https://blog.csdn.net/qq_30006593/article/details/89647937
|
||||
- 部分包的安装间项目根目录下的`安装文档.md`
|
||||
|
||||
- tomcat环境迁移
|
||||
|
||||
建议直接将tomcat整个文件夹全部拷贝过去,因为里面有调用的OpenGrok的Java服务
|
||||
|
||||
- redis环境迁移
|
||||
|
||||
建议直接将redis整个文件夹全部拷贝过去,因为直接就能用
|
||||
|
||||
- opengrok环境迁移
|
||||
|
||||
建议直接将opengrok直接拷贝过去,并也放在/opt/opengrok目录下。因为CodePedia项目中依赖当前的/opt/opengrok这个绝对路径
|
||||
|
||||
- mysql环境迁移
|
||||
|
||||
建议迁移时保持原来的数据库用户和密码,否则需要修改CodePedia项目中数据库的配置
|
||||
|
||||
- nginx和uwsgi迁移
|
||||
|
||||
暂时保留(有点不记得了)
|
||||
|
||||
将所有开发环境迁移之后,需要按照第2小节启动服务的步骤,才能正常使用系统。
|
Loading…
Reference in New Issue