Ubuntu 20.04 安装Odoo17
1、升级系统sudo apt-get update2、更新系统
sudo apt-get upgrade3、查看系统Python3版本
python3 -V4、更新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 --version设置默认版本为 Python3.10
查看系统已存在的所有python版本
ls -l /usr/bin/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设定默认版本
update-alternatives --config python3选择默认版本,提示信息中回车即可.
修复 pip
apt install python3.10-distutils -y
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 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 -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
更新系统更新系统
sudo apt update安装Nginx
sudo apt install nginx -y配置防火墙(443/80)
sudo ufw allow 80
sudo ufw allow 443验证防火墙是否已经放开
sudo ufw statusnginx启动命令
systemctl restart nginx # 启动nginx
systemctl 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 1
esac
exit 0
来源:https://www.cnblogs.com/kwoky/p/17932945.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!
页:
[1]