1、升级系统

sudo apt-get update

2、更新系统

sudo apt-get upgrade

3、查看系统Python3版本

python3 -V

4、更新Python3.8到3.10

sudo add-apt-repository ppa:deadsnakes/ppasudo apt-get update

安装Python 3.10

sudo apt-get install python3.10 -y

安装完成后,检查新版本

python3.10 --version

设置默认版本为 Python3.10查看系统已存在的所有python版本

ls -l /usr/bin/python*

挂载多版本

update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 2

设定默认版本

update-alternatives --config python3

选择默认版本,提示信息中回车即可.修复 pip

apt install python3.10-distutils -ycurl https://bootstrap.pypa.io/get-pip.py -o get-pip.pypython3 get-pip.py

权限问题

python3 get-pip.py --user

检查配置文件

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'

导入密钥

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

更新系统源

sudo apt-get update

安装Postgres

sudo apt-get -y install postgresql

启动命令

systemctl start | stop | restart | status postgresql

进入数据库

sudo -u postgres psql

查看Postgres版本

pg_config --version

修改数据库密码

ALTER USER postgres WITH PASSWORD '要设定的密码';

创建数据库

CREATE USER odoo WITH PASSWORD '要设定的密码';

授予数据库访问权限

ALTER USER odoo CREATEDB;

退出数据库链接

\q

开启远程访问(以下使用的是我的本地版本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://pypi.douban.com/simple

安装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 -ysudo npm install -g rtlcss

安装web依赖包

sudo npm install -g lesssudo npm install -g less-plugin-clean-css

自行修改Odoo的配置文件下的相关配置 – odoo.conf临时启动命令

/home/tools/odoo/odoo-bin -c /home/tools/odoo/debian/odoo.conf

启动后可以看到后台log8、安装Nginx

更新系统

更新系统

sudo apt update

安装Nginx

sudo apt install nginx -y

配置防火墙(443/80)

sudo ufw allow 80sudo ufw allow 443

验证防火墙是否已经放开

sudo ufw status

nginx启动命令

systemctl restart nginx     # 启动nginxsystemctl status nginx      # 查看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//
    • /var/www/
    • /var/www/html/
    • /opt/

注意:80/443端口需要进行备案后方可代理

附加启动脚本

#!/bin/bash# Odoo服务管理脚本# 配置部分USER="odoo"ODOO_HOME="/opt/odoo"ODOO_SERVER="${ODOO_HOME}/odoo-bin"CONFIGFILE="/etc/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服务..."        sudo -u $USER $ODOO_SERVER --config $CONFIGFILE --logfile $LOGFILE --pidfile $PIDFILE    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 1esacexit 0

编程之路,永无止境