代码拉取
首先登录gitlab代码地址库https://git.xxxx.com/users/sign_in
账号/密码:需要使用公司分配的账号和密码----git账号
分别拉取对应代码仓库的代码
登录服务器在要部署的路径下
Master分支拉去
git clone -b master http://git.xxxx.com/roke-platform/xxx-14.git
git clone -b master-webclient https://git.xxxxx.com/xxx-platform/xxx-odoo14.git
dev分支拉去
git clone -b dev http://git.xxxxx.com/xxx-platform/xxx-14.git
git clone -b dev-webclient https://git.xxxxx.com/xxx-platform/xxx-odoo14.git
-
拉去代码注意事项;
-
安装python 环境:apt-get install python3.8* 安装python apt-get remove python3.8* 卸载3.8
-
提前挂载好盘符,这样可以存放更多数据
-
服务器必须存在git服务
-
拉去的代码放到新建文件夹中 mkdir dirname
-
在新增文件夹下新建 conf文件, vim odoo.conf
-
配置odoo.conf的配置文件
[options] admin_passwd = Roke.123 addons_path = /data/cs_oodo_roke/roke-odoo14/odoo-14.0/addons,/data/cs_oodo_roke/roke-odoo14/odoo-14.0/odoo/addons,/data/cs_oodo_roke/roke-odoo14/tool_addons,/data/cs_oodo_roke/roke-odoo14/pub_addons,/data/cs_oodo_roke/roke-erp-14 #系统部署位置 db_host = 127.0.0.1 #数据访问地址 db_port = 5432 #数据库端口 db_user = roke_dome #数据账号 db_password = Roke.123 #数据库密码 timezone = Asia/Shanghai http_port = 8110 #web访问端口 longpolling_port = 18110 #长连接端口 limit_memory_hard = 12884901888 #占用内存 limit_memory_soft = 10737418240 #软件占用内容 limit_time_cpu = 2000 #占用cpu时间 limit_time_real = 2000 @占用读取内存时间 data_dir = /data/erpdata #数据存放位置 dbfilter = ris2.roke.com #数据库名称 server_wide_modules = base,web #服务模块 logfile = /data/logs/erplogs/csdemo.log #日志存放位置 logrotate = True log_handler = :external workers = 2 proxy_mode=True syslog = False -
配置git不输入账号密码配置获取代码
首先进入到 cd 配置文件地址
再次创建文件:vim ~/.gitconfig
添加内容:
[credential] helper = store 然后新建一个文件,进行拉去一次git代码,以后就不需要账号和密码了 拉去后形成一个新的文档:.git-credentials 自动生成文档里面存放账号和密码 -
postgressql配置数据库
-
第一种方式:在线安装
Liunx命令:apt-get install postgresql12 -y
注意:在线安装后,直接可以进行文件配置 -
第二种:离线安装
首先下载pgsql文件,下载地址:https://www.postgresql.org/ftp/source/
a) 安装配置postgresql,如下文档进行编辑安装
https://www.cnblogs.com/zcxxcvbn/p/17187869.html -
配置数据库文档
数据库默认安装地址:/usr/local/pgsql/bin
a) 操作部署-改变数据库文件所属者
新增pgsql用户,进入到/usr/loacl/pgsql创建data,并赋予权限
adduser postgres 设置密码然后回车
cd /usr/local/pgsql
mkdir data chown -R postgres:postgres pgsql/ ./usr/local/pgsql pgsql文件夹授权给postgres用户 su postgres 切换成数据库权限用户 -
初始化数据库
- 初始化数据命令:
- usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
- 解析命令:-D /usr/local/pgsql/data 是指初始化数据位置
- 设置数据日志
- 配置数据信息:/usr/local/pgsql/bin/postgres -D
- 切换用户:su root
- 配置数据库日志文件:/usr/local/pgsql/data >logfile 2>&1 &
- 启动数据库
- cd /usr/loacl/pgsql/bin 进入到数据bin文件夹
- su postgres #切换数据库用户
- ./pg_ctl start -D /data/date/ #启动数据
- pg_ctl -D /data/date/ start 启动服务
- ./pg_ctl -D /data/date/ stop 停止数据库服务
- 操作数据库
a) 进入页面命令操作页面:
进入位置:cd /usr/local/pgsql/bin 首先切换成数据库用户 su postgres 运行数据:./psql 更改postgres用户密码:ALTER USER postgres PASSWORD 'Roke.123'; 新建普通用户 roke_dome: CREATE USER roke_dome WITH PASSWORD 'my_password'; 本地用户登录:psql -U roke_dome -h 127.0.0.1 -p 5432 history |grep ln 查询使用命令 配置软连接是必须配置到文档,不是文件夹 ln -sf /usr/local/pgsql/bin/pg_dump /usr/bin/pg_dump 备份数据时 环境配置
b) 用户授权:
i. 依据文件:https://zhuanlan.zhihu.com/p/651584528?utm_id=0
https://blog.csdn.net/songyundong1993/article/details/131771107
登录权限
- CREATE ROLE user1 LOGIN;
- CREATE ROLE role1;
- 通过\du命令可以查看到user1具有登录权限,role1不具有登录权限
- 创建超级用户权限
- CREATE ROLE super1 SUPERUSER;
- 创建数据库权限
- CREATE ROLE dbmanager1 CREATEDB;
- 创建角色权限
- CREATE ROLE rolemanager1 CREATEROLE;
- 发起流复制权限
- CREATE ROLE replicator1 REPLICATION LOGIN;
-
- 为数据库创建软连接---遇到无法直接运行时
- ln -s /usr/local/pgsql/bin/pg_ctl /usr/bin/pg_ctl
- ./psql
- 配置远程—出现一下情况远程无法链接
出现这样情况,是因为没有添加远程链接方式
配置文件地址:pg_hba.conf 位置:/data/date/pg_hba.conf
配置postgresql.conf 位置/data/date/postgresql.conf
出现无法本地登录情况—需要授权登录
CREATE ROLE user1 LOGIN;
3. 搭建nginx服务
https://blog.csdn.net/m0_52985087/article/details/132063280默认地址找到,配置文件/etc/nginx/nginx.conf文件,按照此样例配置相应的参数,修改proxy_pass 参数,代表转发的web端的ip和端口,配置相对应的服务部署的。
注意:启动服务后有问题,需要进入到oodo里配置日志中进行查看运行问题
- 安装nginx
出现如图所示错误,而且使用ss -nat命令查看服务时也没有出现nginx的80端口
我的解决办法是把原先的nginx卸载掉
sudo apt-get remove nginx nginx-common
sudo apt-get purge nginx nginx-common
sudo apt-get autoremove
sudo apt-get remove nginx-full nginx-common
然后再重新安装nginx
sudo apt-get install nginx
2. 配置nginx
配置信息地址:https://blog.csdn.net/weixin_65680938/article/details/129829986
安装完成,查看端口号:netstat -lntp nginx端口80
使用命令:nginx -t 检测配置文件是否错误
使用命令:nginx -s reload 重启服务
查看动态日志:tail -f /data/logs/erplogs/cs-5052.log 动态日志查看 -f 500 前面500条
systemctl status nginx.service
systemctl start nginx.service
systemctl stop nginx.service
配置文件位置:
usr/sbin/nginx:主程序
/etc/nginx:存放配置文件
/usr/share/nginx:存放静态文件
/var/log/nginx:存放日志
3. 以IP 方法配置映射接口
配置文件server 模块,必须放到http模块中,服务器必须在安全组内开通5000端口
server {
listen 5000; #监听端口
location / {
proxy_pass http://127.0.0.1:8110; #映射使用端口
#proxy_set_header Host $host;
#proxy_set_header X-Real-IP $remote_addr;
#proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#proxy_set_header REMOTE-HOST $remote_addr;
#add_header X-Cache $upstream_cache_status;
#add_header Cache-Control no-cache;
}
client_max_body_size 3072m;
proxy_connect_timeout 2000s;
proxy_send_timeout 2000s;
proxy_read_timeout 2000s;
}
- 以域名方式配置映射
cs-master
server {
server_name cs-master.xbg.rokeris.com;
location / {
add_header 'Access-Control-Allow-Headers' 'x-session-id';
proxy_pass http://127.0.0.1:8110/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
# location /longpolling/ {
# proxy_pass http://127.0.0.1:18211/longpolling/;
# proxy_set_header Host $host;
# proxy_set_header X-Real-IP $remote_addr;
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# proxy_set_header X-Forwarded-Proto $scheme;
# }
listen 80; # managed by Certbot
client_max_body_size 3072m;
proxy_connect_timeout 2000s;
proxy_send_timeout 2000s;
proxy_read_timeout 2000s;
}
- 配置service 启动
可以按照以下样例进行修改 创建地址:/etc/systemd/system
Description service 服务名称
ExecStart python环境 对应部署的路径和conf文件路径
启动服务:service odoo-dome14 start odoo-dome14 服务名称
配置服务 模块如下:
[Unit]
Description=Odoo14 odoo-dome14 # 启动的服务名称必须一致
Requires=postgresql
After=postgresql.service
[Service]
Type=simple
User=root
Group=root
ExecStart=/usr/bin/python3.6 /data/alone-erpserver/cs-kycj/roke-odoo14/odoo-14.0/odoo-bin -c /data/alone-erpserver/cs-kycj/odoo.conf -u roke_mes_base -u表示运行前进行升级roke_mes_base模块
[Install]
WantedBy=multi-user.target
配置后启动服务为:
sudo systemctl enable odoo-14.service 关闭服务
service odoo-14.service status 状态查看
service odoo-14.service start 启动服务
service odoo-dome14 restart 重启服务
- 服务运行---需要所有服务配置完成后进行运行
a) 运行服务遇到问题-因为数据用户权限过大无法链接服务
i. 需新增用户给与授权
运行遇到缺陷模块进行安装 - PyPDF2
python3 -m pip install PyPDF2 python3安装软件包
存在错误查看日志
tail -f /data/logs/erplogs/csdemo.log 服务运行日志
less /data/logs/erplogs/csdemo.log
查询文件位置:
Find -name “csdemo.log” 最好在根目录下
通过访问端口8110 访问i
创建数据库,需要与odoo.conf文件中数据库名称一致“dbfilter = ris2.roke.com #数据库名称
访问成功后进行修改图标:系统设置-组织管理,上传文件即可
修改版本号
update ir_config_parameter set value = 'V 4.6' where key = 'system.version' 修改版本号修改图标:
首先安装报表组件
使用?debug=1 ,添加到url 进行安装模块—报表组件
http://116.204.21.98:8110/web?debug=1
然后使用?debug=1 ,添加到url 进行安装模块—销售模块
-
如何更新
必须进入到git获取下来文档夹中,才能使用git pull 进行升级获取不同的信息
例如:进入 /data/cs_test_dev/roke-erp-14 使用git pull 拉去代码 -
添加文档模块部署
-
开发提供需要安装模块文档
-
在服务器上创建一个文件夹,然后把文档转移到服务器上
a) 首先看一下文档格式,不是tar\zip就先先把文档修改格式后传到服务器上
b) 解压完文档进入进入需要配置环境内修改odoo.conf文件,添加文档放在位置:
c) 然后进行重启服务,重启之后进入到系统中
d) 在系统中进入到“应用管理”-“刷新本地模块列表”,然后进入到“主应用”,查询添加的应用名称“mkx”,展示出来说明本地部署没有问题