1、升级系统
2、更新系统
3、查看系统Python3版本
4、更新Python3.8到3.10
| sudo add-apt-repository ppa:deadsnakes/ppa |
| sudo apt-get update |
安装Python 3.10
| sudo apt-get install python3.10 -y |
安装完成后,检查新版本
设置默认版本为 Python3.10
查看系统已存在的所有python版本
挂载多版本
| update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1 |
| update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 2 |
设定默认版本
选择默认版本,提示信息中回车即可.
修复 pip
| apt install python3.10-distutils -y |
| curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py |
| python3 get-pip.py |
权限问题
检查配置文件
| sudo vi /usr/local/bin/pip3 |
第一行是 #!/usr/bin/python3 即可.
5、安装Postgres
安装最新的Postgres
创建库
| sudo sh -c 'echo "deb https://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list' |
导入密钥
更新系统源
安装Postgres
| sudo apt-get -y install postgresql |
启动命令
| systemctl start | stop | restart | status postgresql |
进入数据库
查看Postgres版本
修改数据库密码
| ALTER USER postgres WITH PASSWORD '要设定的密码'; |
创建数据库
| CREATE USER odoo WITH PASSWORD '要设定的密码'; |
授予数据库访问权限
| ALTER USER odoo CREATEDB; |
退出数据库链接
开启远程访问(以下使用的是我的本地版本16,改成你自己安装的版本号即可)
| vim /etc/postgresql/16/main/pg_hba.conf |
修改监听以及默认端口号
| vim /etc/postgresql/16/main/postgresql.conf |
修改完成后重启
6、卸载postgres
完全卸载PG数据库
| sudo systemctl stop postgresql |
| sudo systemctl status postgresql |
| sudo apt-get purge 'postgresql-*' |
| sudo apt-get autoremove 'postgresql-*' |
| sudo rm -r /etc/postgresql/ |
| sudo rm -r /etc/postgresql-common/ |
| sudo rm -r /var/lib/postgresql/ |
| sudo userdel -r postgres |
| sudo groupdel postgres |
7、拉取Odoo最新代码
| git clone https://github.com/odoo/odoo.git |
安装依赖(如何requirements文件没有权限需要先赋权) 下面使用清华源安装
| pip install -r requirements.txt -i https://pypi.douban.com/simple |
执行上面的后可能存在后续启动时提示还是少包的问题安装即可
| sudo pip install libsass PyPDF2 psycopg2-binary werkzeug passlib Pillow reportlab babel pytz |
| decorator python-dateutil polib docutils rjsmin MarkupSafe psutil -i https: |
安装openssl
| sudo pip install num2words ofxparse dbfread ebaysdk firebase_admin pyOpenSSL -i https://pypi.tuna.tsinghua.edu.cn/simple |
安装npm
| sudo apt-get install nodejs npm -y |
| sudo npm install -g rtlcss |
安装web依赖包
| sudo npm install -g less |
| sudo npm install -g less-plugin-clean-css |
自行修改Odoo的配置文件下的相关配置 - odoo.conf
临时启动命令
| /home/tools/odoo/odoo-bin -c /home/tools/odoo/debian/odoo.conf |
启动后可以看到后台log
8、安装Nginx
更新系统
安装Nginx
| sudo apt install nginx -y |
配置防火墙(443/80)
| sudo ufw allow 80 |
| sudo ufw allow 443 |
验证防火墙是否已经放开
nginx启动命令
| systemctl restart nginx |
| systemctl status nginx |
配置目录
- 所有的 Nginx 配置文件都在/etc/nginx/目录下。
- 主要的 Nginx 配置文件是/etc/nginx/nginx.conf。
- 为每个域名创建一个独立的配置文件,便于维护服务器。你可以按照需要定义任意多的 block 文件。
- Nginx 服务器配置文件被储存在/etc/nginx/sites-available目录下。在/etc/nginx/sites-enabled目录下的配置文件都将被 Nginx 使用。
- 最佳推荐是使用标准的命名方式。例如,如果你的域名是mydomain.com,那么配置文件应该被命名为/etc/nginx/sites-available/mydomain.com.conf
- 如果你在域名服务器配置块中有可重用的配置段,把这些配置段摘出来,做成一小段可重用的配置。
- Nginx 日志文件(access.log 和 error.log)定位在/var/log/nginx/目录下。推荐为每个服务器配置块,配置一个不同的access和error。
- 你可以将你的网站根目录设置在任何你想要的地方。最常用的网站根目录位置包括:
- /home/<user_name>/<site_name>
- /var/www/<site_name>
- /var/www/html/<site_name>
- /opt/<site_name>
注意:80/443端口需要进行备案后方可代理
附:启动脚本
| #!/bin/bash |
| |
| |
| USER="root" |
| ODOO_HOME="/tools/odoo" |
| ODOO_SERVER="${ODOO_HOME}/odoo-bin" |
| CONFIGFILE="/tools/odoo/debian/odoo.conf" |
| PIDFILE="${ODOO_HOME}/odoo-server.pid" |
| LOGFILE="/var/log/odoo/odoo-server.log" |
| |
| start() { |
| if [ -f $PIDFILE ]; then |
| echo "Odoo已经在运行." |
| else |
| echo "启动Odoo服务..." |
| nohup sudo -u $USER $ODOO_SERVER --config $CONFIGFILE --logfile $LOGFILE --pidfile $PIDFILE > /dev/null 2>&1 & |
| echo "Odoo服务已启动." |
| fi |
| } |
| |
| stop() { |
| if [ -f $PIDFILE ]; then |
| echo "停止Odoo服务..." |
| PID=$(cat $PIDFILE) |
| sudo kill -9 $PID |
| sudo rm -f $PIDFILE |
| echo "Odoo服务已停止." |
| else |
| echo "Odoo服务未在运行." |
| fi |
| } |
| |
| restart() { |
| echo "重启Odoo服务..." |
| stop |
| sleep 2 |
| start |
| echo "Odoo服务已重启." |
| } |
| |
| case "$1" in |
| start) |
| start |
| ;; |
| stop) |
| stop |
| ;; |
| restart) |
| restart |
| ;; |
| *) |
| echo "用法: $0 {start|stop|restart}" |
| exit 1 |
| esac |
| exit 0 |
附:启动命令
| nohup /tools/odoo/odoo.sh start & |
附:Centos系统自启服务注册
| vim /etc/systemd/system/odoo.service |
在编辑器中,将以下内容粘贴到文件中:
| [Unit] |
| Description=Odoo 17 |
| Documentation=http://www.odoo.com |
| |
| [Service] |
| |
| User=your_username |
| |
| ExecStart=/path/to/odoo/odoo-bin --config=/path/odoo.conf |
| |
| [Install] |
| WantedBy=default.target |
对该文件进行赋权操作
重新加载systemd服务配置:
| sudo systemctl daemon-reload |
添加系统自启:
| sudo systemctl enable odoo.service |
现在,Odoo服务已配置为开机自启动。你可以使用以下命令来管理服务:
| 启动服务:sudo systemctl start odoo.service |
| 停止服务:sudo systemctl stop odoo.service |
| 重启服务:sudo systemctl restart odoo.service |
| 查看服务状态:sudo systemctl status odoo.service |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步