安装教程
服务器配置说明:
Linux odoo安装教程
1️⃣ 更新系统
sudo apt update && sudo apt upgrade -y2️⃣ 安装基础依赖
sudo apt install git python3-pip build-essential wget python3-dev python3-venv \
libxslt-dev libzip-dev libldap2-dev libsasl2-dev python3-setuptools npm node-less \
libjpeg-dev libpq-dev libxml2-dev libffi-dev libssl-dev wkhtmltopdf -y3️⃣ 安装 PostgreSQL 并创建数据库用户
sudo apt install postgresql -y
sudo -u postgres createuser -s odoo如果你想给数据库用户加密码:
sudo -u postgres psql
\password odoo
\q4️⃣ 创建 Odoo 用户和目录
sudo useradd -m -d /opt/odoo -U -r -s /bin/bash odoo
# 给 odoo 用户授予 sudo 权限
sudo usermod -aG sudo odoo
# 重置odoo密码为odoo
sudo echo "odoo:odoo" | sudo chpasswd5️⃣ 获取 Odoo 源码
sudo su - odoo
git clone https://github.com/odoo/odoo.git -b 17.0
cd odoo如果服务器无法下载可以直接打开链接https://github.com/odoo/odoo/tree/saas-17.4 页面下载
6️⃣ 创建虚拟环境并安装依赖
//目录授权
sudo chown -R odoo:odoo odoo/
python3 -m venv venv
//配置pip国内源
pip config set global.index-url https://repo.huaweicloud.com/repository/pypi/simple/
pip config set global.extra-index-url https://mirrors.cloud.tencent.com/pypi/simple/
pip config set install.trusted-host "repo.huaweicloud.com mirrors.cloud.tencent.com"
pip config set global.timeout 60
//激活虚拟环境
source venv/bin/activate
pip install -r requirements.txt常用命令
# 退出虚拟环境
deactivate
# 清除当前缓存
pip cache purge
# 查看当前配置
pip config list
# 测试下载速度
pip install --upgrade pip如遇pip依赖报错
手动更新 requirements.txt
打开你的文件:
vim requirements.txt
找到以下两行(大约在 20 行附近):
gevent==21.8.0
greenlet==1.1.2
修改为:
gevent>=22.10.2
greenlet>=2.0.07️⃣ 启动测试
su odoo
./odoo-bin -r odoo --addons-path=addons --db-filter=odoo$访问: 👉 http://localhost:8069 初始化数据库后即可进入 Odoo 界面。
如遇到权限报错 PermissionError: [Errno 13] Permission denied: '/opt/odoo/.local'
sudo mkdir -p /opt/odoo/.local
sudo chown -R odoo:odoo /opt/odoo/.local
sudo chmod -R 775 /opt/odoo/.local8️⃣ (可选)创建 Systemd 服务
让 Odoo 开机自启:
sudo nano /etc/systemd/system/odoo.service写入:
[Unit]
Description=odoo
After=network.target postgresql.service
[Service]
Type=simple
SyslogIdentifier=odoo
PermissionsStartOnly=true
User=odoo
Group=odoo
ExecStart=/opt/odoo/venv/bin/python3 /opt/odoo/odoo-bin -c /etc/odoo.conf
StandardOutput=journal+console
[Install]
WantedBy=multi-user.target9️⃣ 创建配置文件
sudo nano /etc/odoo.conf内容:
[options]
admin_passwd = admin
db_host = False
db_port = False
db_user = odoo
db_password = False
addons_path = /opt/odoo/addons
logfile = /var/log/odoo/odoo.log然后:
sudo mkdir -p /var/log/odoo
sudo chown odoo: /var/log/odoo🔟 启动服务
sudo systemctl daemon-reload
sudo systemctl enable --now odoo
sudo systemctl status odoo
// 打印服务日志
sudo tail -200f /var/log/odoo/odoo.log访问: 👉 http://服务器IP:8069
docker odoo安装教程
1️⃣ 安装docker
docker安装教程:https://halo.blog360.sbs/archives/dockeran-zhuang-jiao-cheng
2️⃣ 创建目录结构
mkdir -p /opt/odoo
cd /opt/odoo目录建议:
/opt/odoo/
├─ docker-compose.yml
├─ config/
│ └─ odoo.conf
├─ addons/ # 自定义模块目录
└─ data/ # 数据持久化目录3️⃣ 创建配置文件 config/odoo.conf
[options]
; 数据库连接
db_host = db
db_port = 5432
db_user = odoo
db_password = odoo
; 插件目录
addons_path = /mnt/extra-addons4️⃣ 创建 docker-compose.yml
以下是稳定的 Odoo 17 社区版部署文件 👇
version: '3.9'
services:
db:
image: postgres:15
container_name: odoo-db
environment:
- POSTGRES_DB=postgres
- POSTGRES_USER=odoo
- POSTGRES_PASSWORD=odoo
volumes:
- ./data/db:/var/lib/postgresql/data
restart: unless-stopped
odoo:
image: odoo:17.0
container_name: odoo
depends_on:
- db
ports:
- "8069:8069"
volumes:
- ./config:/etc/odoo
- ./addons:/mnt/extra-addons
- ./data/odoo:/var/lib/odoo
environment:
- HOST=db
- USER=odoo
- PASSWORD=odoo
restart: unless-stopped5️⃣ 启动 Odoo
# 修改文件权限,避免权限异常报错
cd /opt/odoo
mkdir -p /opt/odoo/data/odoo
sudo chown -R 101:101 /opt/odoo/data/odoo
sudo chmod -R 700 /opt/odoo/data/odoo
#启动容器
docker compose up -d查看启动日志:
docker logs -f odoo访问:
http://<服务器IP>:8069第一次进入时,你需要创建一个数据库账户。
发布教程

发布odoo
添加配置域名发布文件
server {
listen 80;
server_name test.blog360.sbs;
client_max_body_size 20m;
# 主请求代理
location / {
proxy_pass http://172.30.0.2:8069;
# 关键头信息传递 (解决混合内容问题)
proxy_set_header Host $http_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; # 告知Discourse使用HTTPS
# WebSocket支持
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
# 缓存优化
proxy_cache_bypass $http_upgrade;
# 修复静态资源路径
sub_filter_once off;
sub_filter_types text/html text/css application/javascript;
}
}申请免费证书(ssl证书可选)
安装Certbot工具
# Ubuntu/Debian
sudo apt update
sudo apt install certbot python3-certbot-nginx
# CentOS/RHEL
sudo yum install epel-release
sudo yum install certbot python3-certbot-nginx申请ssl证书(nginx)
sudo certbot --nginx -d your-domain.com替换
your-domain.com为你的域名