逆时代 發表於 2022-1-22 10:29:00

Ubuntu通过源码安装Odoo16

<p><span style="background-color: rgba(255, 255, 255, 1); font-size: 18pt">Odoo16需要Python3.8支持,否则有些功能可能有所限制</span></p>
<h2>第一步:安装Python和依赖包</h2>
<div class="cnblogs_code">
<pre>sudo apt-get update<br>sudo apt-get install openssh-server fail2ban<br>sudo apt-get install -y python3-pip<br><code class="bash functions">sudo</code> <code class="bash plain">apt </code><code class="bash functions">install</code> <code class="bash plain">git python3-pip build-essential wget python3-dev python3-venv \</code></pre>
<div class="line number2 index1 alt1"><code class="bash spaces">&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="bash plain">python3-wheel libfreetype6-dev libxml2-dev libzip-dev libldap2-dev libsasl2-dev \</code></div>
<div class="line number3 index2 alt2"><code class="bash spaces">&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="bash plain">python3-setuptools node-</code><code class="bash functions">less</code> <code class="bash plain">libjpeg-dev zlib1g-dev libpq-dev \</code></div>
<div class="line number4 index3 alt1"><code class="bash spaces">&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="bash plain">libxslt1-dev libldap2-dev libtiff5-dev libjpeg8-dev libopenjp2-7-dev \</code></div>
<div class="line number5 index4 alt2"><code class="bash spaces">&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="bash plain">liblcms2-dev libwebp-dev libharfbuzz-dev libfribidi-dev libxcb1-dev</code></div>
</div>
<p>&nbsp;Python 依赖安装好之后,还需要安装一些前端所需的依赖包:</p>
<div class="cnblogs_Highlighter">
<pre class="brush:python;gutter:true;">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
</pre>
</div>
<p>  </p>
<p>通过网上搜到的往往有两个坑:</p>
<ol>
<li><em>Package ‘libmysqlclient-dev’ has no installation candidate</em>&nbsp;使用default-libmysqlclient-dev来代替</li>
<li>libjpeg8-dev和libjpeg-dev冲突,导致无法安装,选一个就好,ITGeeker技术奇客用的libjpeg8-dev包<br><br></li>















</ol>
<h2>第二步:安装&nbsp;PostgreSQL&nbsp;数据库</h2>
<p>PostgreSQL用12或者13版本都没问题,有些自带11的问题也不大</p>
<div class="cnblogs_code">
<pre>sudo apt-get install postgresql#安装数据库</pre>
</div>
<p>创建数据库用户</p>
<div class="cnblogs_code">
<pre>sudo su - postgres -c "createuser -s odoo"<br>psql<br>\q<br>exit</pre>
</div>
<p><span style="color: rgba(255, 0, 0, 1)">此步可以跳过。让odoo成为Postgresql的超级用户,否则启动的时候会有个错误提示,不知道是不是新版本的bug</span></p>
<div class="cnblogs_code">
<pre><span style="color: rgba(255, 0, 0, 1)">sudo -u postgres psql</span><br><br><span style="color: rgba(255, 0, 0, 1)">ALTER USER odoo WITH SUPERUSER;</span></pre>
</div>
<h2>第三步:给系统添加一个odoo的用户用于运行</h2>
<div class="cnblogs_code">
<pre>sudo useradd -r -m -U -d /opt/odoo -s /bin/bash odoo</pre>
<pre><br><span style="color: rgba(255, 0, 0, 1)">###sudo adduser --system --home=/opt/odoo --group odoo</span><br>&nbsp;为创建的用户帐户设置密码<br><br>#sudo passwd odoo</pre>
<pre>Changing password for user odoo.
New password:输入自己设置的密码
Retype new password:再次输入自己设置的密码
passwd: all authentication tokens updated successfully.</pre>
</div>
<h2>第四步:获取odoo的源代码</h2>
<div class="cnblogs_code">
<pre>代码可以根据自己的渠道获取</pre>
</div>
<h2>第五步:安装Python的工具包</h2>
<p>此处建议使用python venv环境来运行,这样你的系统如果要使用其它python包的时候不会有冲突,可保持系统稳定运行。</p>
<div class="cnblogs_code">
<pre>sudo su - odoo</pre>
<pre>cd /opt/odoo</pre>
<pre>python3 -m venv odoo-venv</pre>
<pre>source odoo-venv/bin/activate</pre>
<pre>python -m pip install --upgrade pip</pre>
<pre><span style="color: rgba(255, 0, 0, 1)">先把pip3切换到阿里源:</span></pre>
<ol>
<li>
<p><span style="color: rgba(255, 0, 0, 1)">mkdir ~/.pip</span></p>
<p><span style="color: rgba(255, 0, 0, 1)">vi ~/.pip/pip.conf</span></p>
<p><span style="color: rgba(255, 0, 0, 1)"># 然后将下面这两行复制进去就好了</span></p>
<p><span style="color: rgba(255, 0, 0, 1)"></span></p>
<p><span style="color: rgba(255, 0, 0, 1)">index-url = https://mirrors.aliyun.com/pypi/simple</span></p>
</li>
</ol>
<pre><span style="color: rgba(0, 0, 0, 1)">

pip install wheel
pip install </span>--<span style="color: rgba(0, 0, 0, 1)">upgrade pip
pip install setuptools </span>--<span style="color: rgba(0, 0, 0, 1)">upgrade<br><br></span><span>pip3 install </span>-r /opt/odoo/requirements.txt</pre>
</div>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>成功安装后,停用虚拟环境,</p>
<div class="cnblogs_code">
<pre>$deactivate
$exit</pre>
</div>
<p>创建Odoo日志文件:</p>
<div class="cnblogs_code">
<pre>sudo touch /var/log/odoo/odoo.log</pre>
</div>
<p>设置正确的目录权限:</p>
<div class="cnblogs_code">
<pre>sudo chown -R odoo:odoo /opt/odoo/ /var/log/odoo/odoo.log</pre>
</div>
<p>&nbsp;</p>
<p>如果安装速度太慢,那就采用镜像加速的方式来安装吧:</p>
<p>国内PIP安装加速 临时和永久设置镜像的方法</p>
<h4>&nbsp;</h4>
<h2>第六步:安装Wkhtmltopdf</h2>
<p>Odoo打印PDF报告都要用到这个模块,如果直接安装版本太低,就下载到本地安装。</p>
<div class="cnblogs_code">
<pre>cd /tmp &amp;&amp; sudo wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1<span style="color: rgba(0, 0, 0, 1)">.bionic_amd64.deb
sudo dpkg </span>-i wkhtmltox_0.12.5-1<span style="color: rgba(0, 0, 0, 1)">.bionic_amd64.deb
sudo apt install </span>-<span style="color: rgba(0, 0, 0, 1)">f
</span><span style="color: rgba(0, 128, 0, 1)">#</span><span style="color: rgba(0, 128, 0, 1)">直接安装</span>
sudo apt install wkhtmltopdf</pre>
</div>
<h2>第七步:创建conf文件</h2>
<div class="cnblogs_code">
<pre>sudo cp /opt/odoo/odoo_source/debian/odoo.conf /etc/odoo.conf<br>sudo nano /etc/odoo.conf</pre>
</div>
<p>添加配置内容</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 0, 1)">
   ; This </span><span style="color: rgba(0, 0, 255, 1)">is</span><span style="color: rgba(0, 0, 0, 1)"> the password that allows database operations:
   admin_passwd </span>=<span style="color: rgba(0, 0, 0, 1)"> admin
   db_host </span>=<span style="color: rgba(0, 0, 0, 1)"> False
   db_port </span>=<span style="color: rgba(0, 0, 0, 1)"> False
   db_user </span>=<span style="color: rgba(0, 0, 0, 1)"> odoo
   db_password </span>=<span style="color: rgba(0, 0, 0, 1)"> False
   addons_path </span>= /opt/odoo/odoo/<span style="color: rgba(0, 0, 0, 1)">addons
   logfile </span>= /var/log/odoo/odoo.log</pre>
</div>
<p>更改权限</p>
<div class="cnblogs_code">
<pre>sudo chown odoo: /etc/<span style="color: rgba(0, 0, 0, 1)">odoo.conf
sudo chmod </span>640 /etc/odoo.conf</pre>
</div>
<p>&nbsp;</p>
<h2>第八步:odoo服务文件</h2>
<div class="cnblogs_code">
<pre>sudo nano /etc/systemd/system/odoo.service</pre>
</div>
<p>添加内容</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 0, 1)">
Description</span>=<span style="color: rgba(0, 0, 0, 1)">odoo
Documentation</span>=https://<span style="color: rgba(0, 0, 0, 1)">www.geekercloud.com

</span><span style="color: rgba(0, 128, 0, 1)">#</span><span style="color: rgba(0, 128, 0, 1)"> Ubuntu/Debian convention:</span>
Type=<span style="color: rgba(0, 0, 0, 1)">simple
User</span>=<span style="color: rgba(0, 0, 0, 1)">odoo
</span><span style="color: rgba(0, 128, 0, 1)">#</span><span style="color: rgba(0, 128, 0, 1)">ExecStart=/opt/odoo/odoo_source/odoo-bin -c /etc/odoo.conf</span>
ExecStart=/opt/odoo/odoo_venv/bin/python3 /opt/odoo/odoo_source/odoo-bin -c /etc/<span style="color: rgba(0, 0, 0, 1)">odoo.conf

WantedBy</span>=default.target</pre>
</div>
<p>调整权限</p>
<div class="cnblogs_code">
<pre>sudo chmod 755 /etc/systemd/system/odoo.service &amp;&amp; sudo chown root: /etc/systemd/system/odoo.service</pre>
</div>
<p>&nbsp;</p>
<h2>第十步:查看日志Log</h2>
<div class="cnblogs_code">
<pre>sudo tail -f /var/log/odoo/odoo.log</pre>
</div>
<p>----------</p>
<p>&nbsp;重新加载系统服务:</p>
<div class="cnblogs_code">
<pre>sudo systemctl daemon-reload</pre>
</div>
<p>启动创建的odoo服务。</p>
<div class="cnblogs_code">
<pre>sudo systemctl start odoo
sudo systemctl restart odoo</pre>
</div>
<p>使它在启动时启动。</p>
<div class="cnblogs_code">
<pre>$ sudo systemctl enable odoo
Created symlink /etc/systemd/system/multi-user.target.wants/odoo.service → /etc/systemd/system/odoo.service.</pre>
</div>
<p>确认Odoo服务是否设置为在启动时启动。</p>
<div class="cnblogs_code">
<pre>$ systemctl is-enabled odoo
enabled</pre>
</div>
<p>检查是否正在运行。</p>
<div class="cnblogs_code">
<pre>$ systemctl status odoo</pre>
</div>
<p><img src="https://img2022.cnblogs.com/blog/2152910/202210/2152910-20221026203736915-1618999401.png"></p>
<p>&nbsp;</p><br><br>
来源:https://www.cnblogs.com/zhengdaojie/p/15832534.html
頁: [1]
查看完整版本: Ubuntu通过源码安装Odoo16