博客為日常工作學習積累總結:
1.odoo12學習
參考博客:https://alanhou.org/centos-odoo-12/
CentOS 7快速安裝配置 Odoo 12
添加新用戶必做,不然文件權限odoo用戶五權限
useradd -m -U -r -d /opt/odoo -s /bin/bash odoo
設置密碼: passwd odoo
不設置執行后述操作時會報出xxx is not in the sudoers file. This incident will be reported.
su - root
visudo
# 在root ALL=(ALL) ALL下添加相應用戶
odoo ALL=(ALL) ALL
進入odoo用戶:su - odoo
sudo yum -y update
sudo yum -y install epel-release
這一步我用的是我現有的python環境略過了博客上的按照方法
start
# 添加Software Collections (SCL) 安裝 Python
sudo yum -y install centos-release-scl
sudo yum -y install rh-python36
# 或直接執行(可能需要提前執行yum -y groupinstall "Development tools")
sudo yum -y install python36 python36-devel
# 又或者
curl -O https://www.python.org/ftp/python/3.6.7/Python-3.6.7rc2.tgz
tar xf Python-3.6.7rc2.tgz
cd Python-3.6.7rc2
./configure
make
sudo make install
# 安裝其它所需依賴
end
sudo yum -y install git gcc wget nodejs-less libxslt-devel bzip2-devel openldap-devel libjpeg-devel freetype-devel
補充:更新國內 yum 源
sudo yum install wget -y
sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bak
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
sudo yum makecache
安裝和配置 PostgreSQL
sudo yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm
sudo yum install postgresql10 postgresql10-server -y
# 初始化
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
# 啟動服務
sudo systemctl enable postgresql-10
sudo systemctl start postgresql-10
# 創建用戶(可任選名稱,與前面創建的系統用戶名需相同)
sudo su - postgres -c "createuser -s odoo"
ALTER USER odoo WITH PASSWORD '123456'
配置遠程訪問數據庫
修改postgres數據庫管理員密碼:
su - postgres 切換用戶,執行后提示符會變為 ‘-bash-4.2$’,切換為UNIX風格的bash
psql -U postgres 登錄數據庫,執行后提示符變為 ‘postgres=#’
ALTER USER postgres WITH PASSWORD ‘123456’ 設置postgres用戶密碼
\q 退出數據庫
切換到root配置一下遠程連接。
開啟遠程訪問
vi /var/lib/pgsql/10/data/postgresql.conf
修改
#listen_addresses = ‘localhost’
為
listen_addresses=’ *’
當然,此處‘ *’也可以改為任何你想開放的服務器IP
信任遠程連接
vi /var/lib/pgsql/10/data/pg_hba.conf
修改如下內容,信任指定服務器連接
# IPv4 local connections:
host all all 127.0.0.1/32 trust
host all all 0.0.0.0/0 trust
host all all 192.168.1.2/32 trust
我的系統已經關閉防火牆:略過
start
遠程連接配置完成,由於系統原因,還需要在防火牆中打開相應的端口。
打開防火牆
CentOS 防火牆中內置了PostgreSQL服務,配置文件位置在 ,我們只需以服務方式將PostgreSQL服務開放即可。
sudo firewall-cmd --permanent --zone=public --add-port=5432/tcp
sudo firewall-cmd --reload
查看配置文件地址
查看當前配置文件地址,修改配置文件,是該用戶可以通過遠程(navicate)連接數據庫
查看配置文件路徑
select name,setting from pg_settings where category='File Locations';
end
systemctl restart postgresql-10.service
安裝Wkhtmltopdf
wget https://downloads.wkhtmltopdf.org/0.12/0.12.5/wkhtmltox-0.12.5-1.centos7.x86_64.rpm
sudo yum localinstall wkhtmltox-0.12.5-1.centos7.x86_64.rpm -y
# 中文字體
sudo yum install -y wqy*
安裝Sass
sudo yum install -y sassc
安裝 Odoo
安裝及配置
# 切換用戶
sudo su - odoo
cd /opt/odoo
wget http://nightly.odoo.com/12.0/nightly/src/odoo_12.0.latest.tar.gz
# 或git clone https://www.github.com/odoo/odoo --depth 1 --branch 12.0 /opt/odoo/odoo12 (我使用git拉取代碼)
tar -zxvf odoo_12.0.latest.tar.gz
mv odoo-12.0.post20181019/ odoo12
我的Python環境這一步不需要做
# 當前使用 nightly 版本有一個坑,需要自行添加 odoo-bin 文件
#!/usr/bin/env python3
# set server timezone in UTC before time module imported
__import__('os').environ['TZ'] = 'UTC'
import odoo
if __name__ == "__main__":
odoo.cli.main()
#添加執行權限 由於我的環境按照jdk python是用的root權限因此odoo會沒有權限訪問python3
chmod +x odoo12/odoo-bin
chown -R odoo:odoo /opt
chown -R odoo:odoo /application
#環境搭建
python -m venv odoo12-venv
source odoo12-venv/bin/activate
# 或者 Virtualenvwrapper(使用這種方法/etc/systemd/system/odoo12.service也需調整)
curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py"
python36 get-pip.py
pip3 install virtualenvwrapper
# vi ~/.bashrc
export WORKON_HOME=/opt/virtualenvs
# export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python36
source /usr/bin/virtualenvwrapper.sh
#重載.bashrc
source ~/.bashrc
# 安裝依賴包
pip3 install -i https://pypi.douban.com/simple -r odoo12/requirements.txt
deactivate
# 創建自定義插件目錄,如果使用 Git 建議將 local-addons 放在與 odoo12同一級
mkdir odoo12/local-addons
# 創建配置文件(<a href="https://www.jianshu.com/p/abf366d7319e" target="_blank" rel="noopener" data-mce-href="https://www.jianshu.com/p/abf366d7319e">配置項詳解參考</a>)
# odoo12/odoo-bin --help也可進行查看
sudo vi /etc/odoo12.conf
[options]
; This is the password that allows database operations:
# 此處密碼請自行修改
admin_passwd = superadmin_passwd
db_host = False
db_port = False
db_user = odoo
db_password = False
; addons_path = /opt/odoo/odoo12/odoo/addons
; If you are using custom modules
addons_path = /opt/odoo/odoo12/addons,/opt/odoo/odoo12/local-addons
# 切換用戶
sudo su - odoo
cd /opt/odoo
wget http://nightly.odoo.com/12.0/nightly/src/odoo_12.0.latest.tar.gz
# 或git clone https://www.github.com/odoo/odoo --depth 1 --branch 12.0 /opt/odoo/odoo12
tar -zxvf odoo_12.0.latest.tar.gz
mv odoo-12.0.post20181019/ odoo12
# 當前使用 nightly 版本有一個坑,需要自行添加 odoo-bin 文件
#!/usr/bin/env python3
# set server timezone in UTC before time module imported
__import__('os').environ['TZ'] = 'UTC'
import odoo
if __name__ == "__main__":
odoo.cli.main()
#添加執行權限
chmod +x odoo12/odoo-bin
#環境搭建
python36 -m venv odoo12-venv
source odoo12-venv/bin/activate
# 或者 Virtualenvwrapper(使用這種方法/etc/systemd/system/odoo12.service也需調整)
curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py"
python36 get-pip.py
pip3 install virtualenvwrapper
# vi ~/.bashrc
export WORKON_HOME=/opt/virtualenvs
# export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python36
source /usr/bin/virtualenvwrapper.sh
#重載.bashrc
source ~/.bashrc
# 安裝依賴包
pip3 install -i https://pypi.douban.com/simple -r odoo12/requirements.txt
deactivate
# 創建自定義插件目錄,如果使用 Git 建議將 local-addons 放在與 odoo12同一級
mkdir odoo12/local-addons
# 創建配置文件(<a href="https://www.jianshu.com/p/abf366d7319e" target="_blank" rel="noopener" data-mce-href="https://www.jianshu.com/p/abf366d7319e">配置項詳解參考</a>)
# odoo12/odoo-bin --help也可進行查看
sudo vi /etc/odoo12.conf
[options]
; This is the password that allows database operations:
# 此處密碼請自行修改
admin_passwd = superadmin_passwd
db_host = False
db_port = False
db_user = odoo
db_password = False
; addons_path = /opt/odoo/odoo12/odoo/addons
; If you are using custom modules
addons_path = /opt/odoo/odoo12/odoo/addons,/opt/odoo/odoo12/local-addons
添加服務
sudo vi /etc/systemd/system/odoo12.service
[Unit]
Description=Odoo12
Requires=postgresql-10.service
After=network.target postgresql-10.service
[Service]
Type=simple
SyslogIdentifier=odoo12
PermissionsStartOnly=true
User=odoo
Group=odoo
WorkingDirectory=/opt/odoo
Environment=/opt/odoo/odoo12-venv/bin/activate
ExecStart=/opt/odoo/odoo12-venv/bin/python3 /opt/odoo/odoo12/odoo-bin -c /etc/odoo12.conf
# ExecStart=/usr/bin/scl enable rh-python36 -- /opt/odoo/odoo12-venv/bin/python3 /opt/odoo/odoo12/odoo-bin -c /etc/odoo12.conf
StandardOutput=journal+console
[Install]
WantedBy=multi-user.target
# 啟動服務
sudo systemctl daemon-reload
sudo systemctl start odoo12
sudo systemctl enable odoo12
sudo vi /etc/systemd/system/odoo12.service
[Unit]
Description=Odoo12
Requires=postgresql-10.service
After=network.target postgresql-10.service
[Service]
Type=simple
SyslogIdentifier=odoo12
PermissionsStartOnly=true
User=odoo
Group=odoo
WorkingDirectory=/opt/odoo
Environment=/opt/odoo/odoo12-venv/bin/activate
ExecStart=/opt/odoo/odoo12-venv/bin/python3 /opt/odoo/odoo12/odoo-bin -c /etc/odoo12.conf
# ExecStart=/usr/bin/scl enable rh-python36 -- /opt/odoo/odoo12-venv/bin/python /opt/odoo/odoo12/odoo-bin -c /etc/odoo12.conf
StandardOutput=journal+console
[Install]
WantedBy=multi-user.target
# 啟動服務
sudo systemctl daemon-reload
sudo systemctl start odoo12
示例配置文件
[options]
addons_path = /usr/lib/python3/dist-packages/odoo/addons
admin_passwd = $pbkdf2-sha512$25000$y9k7Z4zROifEOOf8v5fSeg$WD0vlcapmdkyCY8Uy9Md/Z1kchm8Sj942E4B1Ry13iwcCKaRFf1t3DEPYQrsB6iPwb2K/kJ6obs9CX2HRsx9KA
csv_internal_sep = ,
data_dir = /var/lib/odoo/.local/share/Odoo
db_host = False
db_maxconn = 64
db_name = False
db_password = False
db_port = False
db_sslmode = prefer
db_template = template0
db_user = odoo
dbfilter =
demo = {}
email_from = False
geoip_database = /usr/share/GeoIP/GeoLite2-City.mmdb
http_enable = True
http_interface =
http_port = 8069
import_partial =
limit_memory_hard = 2684354560
limit_memory_soft = 2147483648
limit_request = 8192
limit_time_cpu = 60
limit_time_real = 120
limit_time_real_cron = -1
list_db = True
log_db = False
log_db_level = warning
log_handler = :INFO
log_level = info
logfile = /var/log/odoo/odoo-server.log
logrotate = False
longpolling_port = 8072
max_cron_threads = 2
osv_memory_age_limit = 1.0
osv_memory_count_limit = False
pg_path = None
pidfile = None
proxy_mode = False
reportgz = False
server_wide_modules = base,web
smtp_password = False
smtp_port = 25
smtp_server = localhost
smtp_ssl = False
smtp_user = False
syslog = False
test_enable = False
test_file = False
test_tags = None
translate_modules = ['all']
unaccent = False
without_demo = False
workers = 0
[options]
addons_path = /usr/lib/python3/dist-packages/odoo/addons
admin_passwd = $pbkdf2-sha512$25000$y9k7Z4zROifEOOf8v5fSeg$WD0vlcapmdkyCY8Uy9Md/Z1kchm8Sj942E4B1Ry13iwcCKaRFf1t3DEPYQrsB6iPwb2K/kJ6obs9CX2HRsx9KA
csv_internal_sep = ,
data_dir = /var/lib/odoo/.local/share/Odoo
db_host = False
db_maxconn = 64
db_name = False
db_password = False
db_port = False
db_sslmode = prefer
db_template = template0
db_user = odoo
dbfilter =
demo = {}
email_from = False
geoip_database = /usr/share/GeoIP/GeoLite2-City.mmdb
http_enable = True
http_interface =
http_port = 8069
import_partial =
limit_memory_hard = 2684354560
limit_memory_soft = 2147483648
limit_request = 8192
limit_time_cpu = 60
limit_time_real = 120
limit_time_real_cron = -1
list_db = True
log_db = False
log_db_level = warning
log_handler = :INFO
log_level = info
logfile = /var/log/odoo/odoo-server.log
logrotate = False
longpolling_port = 8072
max_cron_threads = 2
osv_memory_age_limit = 1.0
osv_memory_count_limit = False
pg_path = None
pidfile = None
proxy_mode = False
reportgz = False
server_wide_modules = base,web
smtp_password = False
smtp_port = 25
smtp_server = localhost
smtp_ssl = False
smtp_user = False
syslog = False
test_enable = False
test_file = False
test_tags = None
translate_modules = ['all']
unaccent = False
without_demo = False
workers = 0
2.整合郵箱:
mail.from=messenger.system@honortone.com
mail.fromname=system messenger
mail.host=smtp.honortone.com
mail.password=be587446
mail.smtp.auth=true
mail.smtp.timeout=25000
mail.username=messenger.system@honortone.com
smtp_password = be587446
smtp_port = 25
smtp_server = smtp.honortone.com
smtp_ssl = False
smtp_user = messenger.system@honortone.com
email_from = messenger.system@honortone.com
3..整合微信:可參考代碼發布,哈哈
mkdir /opt/odoo/odoo12/local-addons/oejia_wx
git clone https://www.github.com/JoneXiong/oejia_wx/ --depth 1 --branch 12.0 /opt/odoo/odoo12/local-addons/oejia_wx
4..整合國外的muk_web:可參考代碼發布,哈哈
mkdir /opt/odoo/odoo12/local-addons/muk_web
git clone https://github.com/muk-it/muk_web --depth 1 --branch 12.0 /opt/odoo/odoo12/local-addons/muk_web
5.整合國外的auto_backup自動備份:可參考代碼發布,哈哈
mkdir /opt/odoo/odoo12/local-addons/auto_backup
git clone https://github.com/Yenthe666/auto_backup --depth 1 --branch 12.0 /opt/odoo/odoo12/local-addons/auto_backup
pip3 install -i https://pypi.douban.com/simple -r odoo12/local-addons/auto_backup/requirements.txt
6.整合國外的addons-onestein
可參考代碼發布,哈哈
mkdir /opt/odoo/odoo12/local-addons/addons-onestein
git clone https://github.com/aliensoftwaredev/Odoo --depth 1 --branch 12.0 /opt/odoo/odoo12/local-addons/addons-onestein
7.整合國外的aliensoftwaredev:可參考代碼發布,哈哈
mkdir /opt/odoo/odoo12/local-addons/aliensoftwaredev
git clone https://github.com/aliensoftwaredev/Odoo --depth 1 --branch 12.0 /opt/odoo/odoo12/local-addons/aliensoftwaredev
8.整合國內的oejia_weshop:可參考代碼發布,哈哈
mkdir /opt/odoo/odoo12/local-addons/oejia_weshop
git clone https://github.com/JoneXiong/oejia_weshop --depth 1 --branch 12.0 /opt/odoo/odoo12/local-addons/oejia_weshop
pip3 install -i https://pypi.douban.com/simple -r /opt/odoo/odoo12/local-addons/oejia_weshop/requirements.txt
9.整合國內的oejia_menu:可參考代碼發布,哈哈
mkdir /opt/odoo/odoo12/local-addons/oejia_menu
git clone https://github.com/JoneXiong/oejia_menu --depth 1 --branch 12.0 /opt/odoo/odoo12/local-addons/oejia_menu
10.整合國內的oejia_weshop:可參考代碼發布,哈哈
mkdir /opt/odoo/odoo12/local-addons/weodoo
git clone https://github.com/JoneXiong/weodoo --depth 1 --branch master /opt/odoo/odoo12/local-addons/weodoo
https://github.com/OmniaGit/odooplm
10.整合國內的odooplm:可參考代碼發布,哈哈
mkdir /opt/odoo/odoo12/local-addons/odooplm
git clone https://github.com/OmniaGit/odooplm --depth 1 --branch 12.0 /opt/odoo/odoo12/local-addons/odooplm
7.整合國外的theme_nice_bootstrap-12.0.1.0.zip
unzip theme_nice_bootstrap-12.0.1.0.zip
8.整合國外的asset_documents-12.0.1.0.0.zip
unzip asset_documents-12.0.1.0.0.zip
9.整合國外的backend_theme_v12-12.0.0.1.zip
unzip backend_theme_v12-12.0.0.1.zip