前提条件として、python3.8.0をインストールします
参考資料:https://blog.csdn.net/ccagy/article/details/113174773
ステップ1:aptソースリストを更新します。
sudo apt-get update
ステップ2:odooユーザーとグループを作成します。
sudo adduser -system -home=/opt/odoo -group odoo
ステップ3:odooをスムーズに実行するには、PostgreSQLデータベースサーバーをインストールし、odoo が実行されているのと同じホストにインストールします 。
sudo apt-get install -y postgresql
インストール開始後、以下のコマンドを使用してpostgresqlデータベースサーバーを起動します
sudoサービスpostgresql開始
次に、odooのデータベースユーザーを作成します
sudo su-postgres
createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt odoo
新しく作成したロールのロールパスワードを指定し、もう一度パスワードを指定して確認します。
出口
次に、postgresqlサーバーを再起動します
sudoサービスpostgresql再起動
ステップ4:サーバーにPythonおよび依存Pythonパッケージをインストールします。
sudo apt-get install -y python3-pip
sudo apt-get install libxml2-dev libxslt1-dev python-dev
sudo apt-get install zlib1g-dev
sudo apt-get install libevent-dev
sudo pip install lxml
sudo apt-get install libldap2-dev
sudo apt-get install libsasl2-dev
Odoo14のPython依存関係をインストールします。
odooユーザーに切り替えてから、依存関係パッケージをインストールします。
sudo su-odoo -s / bin / bash
pip3インストールBabelデコレータdocutilsebaysdk feedparser gevent greenlet html2text Jinja2 lxml Mako MarkupSafe mock num2words ofxparsepasslib枕psutilpsycogreen psycopg2 pydot pyparsing PyPDF2 pyserial python-dateutil python-openid pytz pyusb
インストールが遅い場合は、パラメーター-ihttps ://pypi.mirrors.ustc.edu.cn/simple/を追加できます 。
ステップ5:OdooWebの依存関係
sudo apt-get install -y npm sudo ln -s / usr / bin / nodejs / usr / bin / node sudo npm install -g less less-plugin-clean-css sudo apt-get install -y node-less sudo python3- m pip install libsass
ステップ6:nightly.odoo.comからodoo14コミュニティバージョンをインストールします。
odooユーザーに切り替えます
sudo su-odoo -s / bin / bash
nightly.odoo.comからodoo14パッケージをダウンロードします
wget https://nightly.odoo.com/14.0/nightly/deb/odoo_14.0.latest.tar.xz
tarを使用してダウンロードしたodoo14のパッケージを抽出します
tar xfv odoo_14.0.latest.tar.xz
ディレクトリを/ opt / odooからsrcに変更します
cd src
要件をインストールします
pip3 install -r Requirements.txt
そして、odooユーザーを終了します
ステップ7:odoo構成ファイルを作成する
sudo vim /etc/odoo-server.conf
以下の内容を設定ファイルにコピーします。
[オプション] ; これは、データベース操作を許可するパスワードです 。admin_passwd = admin db_host = False db_port = False db_user = odoo db_password = False logfile = /var/log/odoo/odoo-server.log addons_path = / opt / odoo / src / addons、/ opt / odoo / src / odoo / addons
以下のように、構成ファイルのアクセス許可とユーザー所有権を変更します
sudo chown odoo:/etc/odoo-server.conf sudo chmod 640 /etc/odoo-server.conf
ステップ8:odooログファイルを作成する
sudo mkdir / var / log / odoo sudo chown odoo:root / var / log / odoo
ステップ9:スクリプト をコピーしてこのファイルに貼り付けることができ ます。
sudo vim /etc/init.d/odoo-server
#!/bin/sh
########################################################
########## +-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+ +-+##########
########## Technaureus Info Solutions Pvt Ltd ##########
########## +-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+ +-+##########
########################################################
### BEGIN INIT INFO
# Provides: odoo-server
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Should-Start: $network
# Should-Stop: $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Name: Odoo start/stop script for Ubuntu
# Author: Technaureus Info Solutions Pvt Ltd.
# Website: https://technaureus.com
# Description: Using this script, we can start/stop/restart
# or check status of odoo server.
#
# Copyright(c)-2016-Present Technaureus Info Solutions Pvt. Ltd.
# All Rights Reserved.
### END INIT INFO
PATH=/bin:/sbin:/usr/bin
NAME=odoo-server
DESC=ODOO-SERVER
# Specify the daemon path for Odoo server.
# (Default for ODOO >=10: /opt/odoo/odoo-bin)
# (Default for ODOO <=9: /opt/odoo/openerp-server)
DAEMON=/opt/odoo/src/odoo-bin
CONFIGFILE="/etc/odoo-server.conf" # Specify the Odoo Configuration file path.
USER=odoo # Specify the user name (Default: odoo).
PIDFILE=/var/run/$NAME.pid # pidfile
# Additional options that are passed to the Daemon.
DAEMON_ARGS="-c $CONFIGFILE"
display() {
RED=$(tput setaf 1)
GREEN=$(tput setaf 2)
NORMAL=$(tput sgr0)
col=$(tput cols)
case "$#" in
1)
if [ $1 -eq 0 ] ; then
printf '%s%*s%s' "$GREEN" $col "[ OK ] " "$NORMAL"
else
printf '%s%*s%s' "$RED" $col "[FAIL] " "$NORMAL"
fi
;;
2)
if [ $1 -eq 0 ] ; then
echo "$GREEN* $2$NORMAL"
else
echo "$RED* $2$NORMAL"
fi
;;
*)
echo "Invalid arguments"
exit 1
;;
esac
}
if ! [ -x $DAEMON ] ; then
echo "Error in ODOO Daemon file: $DAEMON"
echo "Possible error(s):"
display 1 "Daemon File doesn't exists."
display 1 "Daemon File is not set to executable."
exit 0;
fi
if ! [ -r $CONFIGFILE ] ; then
echo "Error in ODOO Config file: $CONFIGFILE"
echo "Possible error(s):"
display 1 "Config File doesn't exists."
display 1 "Config File is not set to readable."
exit 0;
fi
if ! [ -w $PIDFILE ] ; then
touch $PIDFILE || echo "Permission issue: $PIDFILE" && exit 1
chown $USER: $PIDFILE
fi
# Function that starts the daemon/service
do_start() {
echo $1
check_status
procs=$?
if [ $procs -eq 0 ] ; then
start-stop-daemon --start --quiet --pidfile ${PIDFILE} \
--chuid ${USER} --background --make-pidfile \
--exec ${DAEMON} -- ${DAEMON_ARGS}
return $?
else
detailed_info "${DESC} is already Running !!!" $procs
exit 1
fi
}
# Function that stops the daemon/service
do_stop() {
echo $1
check_status
if [ $? -ne 0 ] ; then
start-stop-daemon --stop --quiet --pidfile ${PIDFILE}
return $?
else
display 0 "${DESC} is already Stopped. You may try: $0 force-restart"
exit 1
fi
}
get_pids(){
pids=$(ps -Ao pid,cmd | grep $DAEMON | grep -v grep | awk '{print $1}')
return $pids
}
# Function that checks the status of daemon/service
check_status() {
echo $1
# start-stop-daemon --status --pidfile ${PIDFILE}
status=$(ps -Ao pid,cmd | grep $DAEMON | grep -v grep | awk '{print $1}' | wc -l)
return $status
}
# Function that forcely-stops all running daemon/service
force_stop() {
echo $1
pids=$(ps -Ao pid,cmd | grep $DAEMON | grep -v grep | awk '{print $1}')
if [ ! -z "$pids" ] ; then
kill -9 $pids
fi
return $?
}
detailed_info() {
procs=$2
if [ $procs -eq 1 ] ; then
display 0 "$1"
echo "FINE, ${procs} ${DESC} is Running."
echo "Details :"
pid=`cat $PIDFILE`
echo "Start Time : $(ps -p $pid -wo lstart=)"
echo "Total UpTime: $(ps -p $pid -wo etime=)"
echo "Process ID : ${pid}"
echo ""
else
display 1 "WARNING !!!"
display 1 "${procs} ${DESC}s are Running !!!"
pids=$(ps -Ao pid,cmd | grep $DAEMON | grep -v grep | awk '{print $1}')
echo "Details :"
echo -n "Process IDs : "
echo $pids
# echo $pids | tr ' ' ,
echo "In order to fix, Hit command: $0 force-restart"
echo ""
fi
}
case "$1" in
start)
do_start "Starting ${DESC} "
display $?
;;
stop)
do_stop "Stopping ${DESC} "
display $?
;;
status)
check_status "Current Status of ${DESC}:"
procs=$?
if [ $procs -eq 1 ] ; then
detailed_info "RUNNING" $procs
elif [ $procs -eq 0 ] ; then
display 1 "STOPPED"
else
detailed_info "" $procs
fi
;;
restart|reload)
do_stop "Stopping ${DESC} "
display $?
sleep 1
do_start "Starting ${DESC} "
display $?
;;
force-restart)
force_stop "Forcely Restarting ${DESC} "
sleep 1
do_start "Starting ${DESC} "
display $?
;;
force-stop)
force_stop "Forcely Stopping all running ${DESC} "
display $?
;;
cs)
ps -Ao pid,cmd | grep $DAEMON | grep -v grep | awk '{print $1}' | wc -l
;;
*)
display 1 "Usage: $0 {start|stop|restart/reload|status|force-restart|force-stop}"
exit 1
;;
esac
exit 0
次に、所有権と許可を変更します
sudo chmod 755 /etc/init.d/odoo-server sudo chown root:/etc/init.d/odoo-server
ステップ10:サービスとして実行されているサーバーをテストします
odooサーバーを起動するには
sudo /etc/init.d/odoo-server start
odooサーバーを停止します
sudo /etc/init.d/odoo-server stop
odooサーバーを再起動するには
sudo /etc/init.d/odoo-server restart
odooログファイルを表示する
テール/var/log/odoo/odoo-server.log
ここで、このサービスを追加して起動時に開始する場合は、次のコマンドを実行します
update-rc.d odoo-server defaults
ステップ11:odooをローカルで実行する
odooユーザーに切り替えます
sudo su --odoo -s / bin / bash python3 / opt / odoo / src / odoo-bin
次に、Webブラウザにアクセスしてodoo14にアクセスし、ページを初めて開いたときに注意してください。パスワードを覚えておく必要があります。xxxwt-5xxz-xxn8そうでない場合、許可は求められません。
http:// localhost:8069
または
http://0.0.0.0:8069
ステップ12:WKHTMLTOPDF、これはオンデマンドでインストールされます
PDFレポートを印刷するには、正しいバージョンのwkhtmltopdfをインストールする必要があります。
sudo wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.bionic_amd64.deb
sudo dpkg -i wkhtmltox_0.12.6-1.bionic_amd64.deb
sudo cp /usr/local/bin/wkhtmltoimage /usr/bin/wkhtmltoimage
sudo cp /usr/local/bin/wkhtmltopdf /usr/bin/wkhtmltopdf