前言
一、工作介绍
识别复合蛋白相互作用(CPI)对药物筛选、药物再利用和联合治疗研究至关重要。CPI预测的性能很大程度上依赖于从化合物和靶蛋白中提取的特征。现有的预测方法使用不同的特征组合,但基于分子和基于网络的模型都存在特征表示不完全的问题。因此,完全整合CPI的相关特征将是解决现有问题的有效途径。
本研究提出了一种新的MCPI模型,该模型综合了蛋白质-蛋白质相互作用网络(PPI)、化合物-化合物相互作用网络(CCI)和CPI的结构特征,提高了预测性能。
现在我们准备将模型和预测服务作为Web Server部署到服务器上,本文主要介绍了相关的部署任务和部署流程。
二、 工作内容
工作内容主要分为数据库相关和Anaconda相关两部分。
1. 数据库相关工作
- Linux系统下MongoDB数据库的安装和配置
- Linux系统下MongoDB数据库的数据导入
2. Anaconda相关工作
- Linux系统下Anaconda的安装和配置
- Linux系统下Anaconda的环境配置
工作流程
根据工作内容,我们将工作流程分为Linux系统下数据库工作流程和Anaconda工作流程两部分来分别介绍。
一、 数据库相关工作流程
根据数据库相关工作内容,我们将Linux系统下数据库工作流程分为Linux系统下MongoDB数据库的安装和配置和Linux系统下MongoDB数据库的数据导入两部分来分别介绍。
1. Linux系统下MongoDB数据库的安装和配置
(1) 创建MongoDB的安装路径
在/usr/local/ 创建文件夹mongodb。
mkdir mongodb
(2) 上传文件到Linux上的/usr/local/mongodb目录下
- 下载mongoDB下载对应的版本
官网地址:https://www.mongodb.org/dl/linux- 通过FTP工具将安装包上传到linux机器上面
(3) 解压文件
进入到/usr/local/mongodb目录:
cd /usr/local/mongodb/
(4) 创建mongodb数据存储文件和日志文件
mkdir data
mkdir logs
cd ./logs
touch mongodb.log
cd ../
mkdir etc
cd etc
touch mongodb.conf
(5) 配置mongodb.conf文件
#数据库路径
dbpath=/usr/local/mongodb/data
#日志输出文件路径
logpath=/usr/local/mongodb/logs/mongodb.log
#错误日志采用追加模式
logappend=true
#启用日志文件,默认启用
journal=true
#这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
quiet=true
#端口号 默认为27017
port=27017
#允许远程访问
bind_ip=0.0.0.0
#开启子进程
fork=true
#开启认证,必选先添加用户,先不开启(不用验证账号密码)
#auth=true
(6) 将mongodb服务加入环境变量
vi /etc/profile
在最后一行添加:
export PATH=$PATH:/usr/local/mongodb/mongodb-linux-x86_64-4.0.13/bin
使配置文件生效:
source /etc/profile
(7) 启动mongodb服务
在mongodb的安装目录下的bin目录下启动服务:
./mongod --config /usr/local/mongodb/etc/mongodb.conf
查看mongodb是否已经启动成功
netstat -lanp | grep "27017"
(8) 操作mongo数据库
任意目录下,输入命令mongo
即可进入数据库,配置了环境变量的前提下,否则需要在mongodb安装目录下的bin目录下使用 ./mongo
命令:
mongo
默认是进入的是test数据库,show dbs 查看当前所有数据库。
注意:如果一个数据库是没有安全认证的,不使用用户名密码即可登陆,这样是不安全的,所以我们应当授予权限才能操作数据库,这样再企业中才能保证数据安全性。
(9) 添加用户、安全认证
首先必须使用admin数据库,进行新用户授权:
MongoDB副本集默认会创建local、admin数据库,local数据库主要存储副本集的元数据,admin数据库则主要存储MongoDB的用户、角色等信息。
输入以下命令:
db.createUser({user:"root",pwd:"123456",roles:[{role:"root",db:"admin"}]})
授权成功后,关闭mongo服务:
db.shutdownServer()
然后需要到配置文件中修改配置,启用安全认证。
#开启认证,必选先添加用户
auth=true
最后开启mongo服务,进入数据库测试:
use admin
db.auth('root','123456')
(10) 防火墙端口开放
注意:如果外网ip不能访问、也就是客户端无法连接,可能是需要放行防火墙端口。
开启防火墙:
systemctl start firewalld
防火墙状态:
systemctl status firewalld
设置防火墙mongo放行端口
–permanent代表永久开启:
firewall-cmd --zone=public --add-port=27017/tcp --permanent
重启防火墙:
firewall-cmd --reload
查看防火墙放行端口:
firewall-cmd --list-ports
关闭防火墙端口:
firewall-cmd --zone=public --remove-port=27017/tcp --permanent
开启设置防火墙:
(1)设置开机启用防火墙:systemctl enable firewalld.service
(2)设置开机禁用防火墙:systemctl disable firewalld.service
命令含义:
–zone #作用域
–add-port=9200/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效
注意:添加端口后,必须用命令firewall-cmd –reload重新加载一遍才会生效
2. Linux系统下MongoDB数据库的数据导入
首先将需要导入的json文件传入服务器,然后使用如下命令:
mongoimport --db (database name) --collection (collection name) --file (file path)
出现报错:
Failed: error unmarshaling bytes on document #0: JSON decoder out of sync - data changing underfoot?
解决:将–jsonArray标志添加到我导入的命令中
mongoimport --db (database name) --collection (collection name) --jsonArray --file (file path)
出现报错:
error inserting documents: command insert requires authentication
解决:出现该报错的原因是由于我们要把数据插入到库时,没有权限。这是因为在导入时,MongoDB会对操作的用户进行检查,此时我们要把数据导入到库中,我们需要带上有权限的的用户名和密码
mongoimport -u (user name) -p (password) --db (database name) --collection (collection name) --jsonArray --file (file path)
报错:
Failed: error connecting to db server: server returned error on SASL authentication step: Authentication failed.
解决:添加–authenticationDatabase admin
mongoimport -u (user name) -p (password) --db (database name) --collection (collection name) --jsonArray --file (file path) authenticationDatabase admin
二、 Anaconda相关工作流程
1. Linux系统下Anaconda的安装和配置
(1) 下载Anaconda的安装包
这里我们需要在官网上查找自己需要的版本,地址链接在下面:
(2) 安装Anaconda的安装包
使用bash命令安装,然后一直按提示操作即可:
sh Anaconda3-2022.10-Linux-x86_64.sh
在安装中包括以下过程:
请观看许可信息,按 Enter 键确认
按回车观看更多许可信息,按 Q 键跳过
是否接受许可条款, 输入yes回车
是否将Anaconda安装在当前路径下,可以输入新的路径回车安装,如果直接回车安装在默认路径下
安装Anaconda,输入yes回车
安装完成
这时关闭终端,再打开终端会在前面显示(base)表示安装成功,以后终端会默认打开在conda环境。
输入 conda -V 可以查看安装的Anaconda版本:
conda -V
2. Linux系统下Anaconda的环境配置
(1) 创建Python环境
anaconda命令创建python版本为x.x,名字为env_name的虚拟环境。
env_name文件可以在Anaconda安装目录envs文件下找到。
# 创建
conda create -n env_name python=x.x
conda create -n pytorch python=3.6
# 删除
conda remove -n env_name --all
激活虚拟环境和关闭虚拟环境:
# 激活
conda activate env_name
conda activate pytorch
# 关闭
conda deactivate
(2) 安装相关的模块
本项目用到的Python模块以及安装命令为:
# numpy
conda install numpy
# pandas
conda install pandas
# pymongo
conda install -c https://conda.binstar.org/anaconda pymongo
# flask
pip install flask
# gensim 4.1.2
pip install gensim==4.1.2
# pubchempy
conda install -c bioconda pubchempy
# sklearn
pip install -U scikit-learn
# rdkit
conda install -c rdkit rdkit
# pytorch
conda install pytorch torchvision torchaudio cpuonly -c pytorch
🤯本文作者:Ivan
🔗本文链接:https://ivan020121.github.io/2022/03/30/Server%20deployment%20process/
🔁版权声明:本站所有文章除特别声明外,均采用©BY-NC-SA许可协议。转载请注明出处!