Ubuntu 22.04 用Docker容器安装ODOO17

自己从模板机克隆一台机出来,修改ip地址远程连接上,以odoo98为例子

搭建结构:

一、安装Docker

注:现在所有操作都在Ubuntu执行

注:所谓容器就是在Ubuntu新建一个干净的环境去部署东西

1.1、安装基础环境

整合命令:

apt install vim-gtk podman-docker -y

ps:vim-gtk是带图形界面的,vim不带纯文本模式

1.2、拉取 Ubuntu 镜像

docker pull ubuntu

1.3、创建主机和容器共享目录

# 创建
mkdir -p /Users/fish/develop

# 授权读写
chmod -R 777 /Users/fish/develop

1.4、创建容器

docker run -it -p 18880:8880 -p 18888:8888 \
    -v /Users/fish/develop:/home/develop \
    --name odoo ubuntu
  • -p 参数用于映射端口,将容器内的端口 8888 映射到主机的端口 18888,并在浏览器中访问时使用 http://localhost:18888
  • -v 参数用于挂载主机文件夹到容器内,实现文件共享。

此时你会发现,主机名字改变了:

输入exit退出容器:

1.5、Docker容器启停

启动名为 "odoo" 的容器

docker start odoo 

进入容器内部的 bash shell

docker exec -it odoo bash

二、使用容器搭建odoo

如果下载慢,可以参考Ubuntu更新软件源(阿里、华为、清华源)笔记

把源全部加进去就快了

2.1、进入容器

docker exec -it odoo bash

2.2、容器内安装必要环境

update更新更新本地软件包的源 and upgrade根据源更新包

apt update -y && apt upgrade -y

安装一些环境软件:

apt install mc tzdata vim -y

选择06,亚洲

选择70,上海

这里如果更改时区:【默认不改直接下一步】

dpkg-reconfigure tzdata

刷新环境变量:

source /etc/profile

2.3、安装依赖和配置 PostgreSQL

安装依赖:【一条也别漏】

apt -y install postgresql python3 python3-pip git wkhtmltopdf python3-lxml python3-ldap python3-pillow python3-psycopg2 python3-gevent

PS:看不懂看看就行,

如果不在这里安装 python(bold部分)需要的元件,
postgresql 
python3 
python3-pip 
git
python3-lxml 
python3-ldap 
python3-pillow 
python3-psycopg2
python3-gevent
后面pip也装不起来这些模块,或是很难装 
网上一大堆在解释怎么从 pip 安装,都是因為不了解ubuntu, 都是错的,。
debian系列這幾個都需使用 apt安裝。

2.4、在系统环境变量添加UTF-8

编辑:

vim /etc/profile
export LANG=C.UTF-8                # 在最后一行添加,最后一行快捷键:G ,O编辑下一行

更新:

source /etc/profile

2.5、增加User ODOO及ODOO系統

mkdir /home/odoo && useradd -d /home/odoo -s /bin/bash odoo
chown -R odoo.odoo /home/odoo

创建名为odoo的用户,并为其创建一个家目录。

然后,将家目录的所有权分配给odoo用户

2.6、切换到 PostgreSQL 用户并创建用户

1、切换到 PostgreSQL:

su postgres

2、启动 PostgreSQL 服务器:

service postgresql start        # 启动服务
service postgresql status        # 检查状态
systemctl enable postgresql             # 开机自启动

3、进入 PostgreSQL 数据库管理工具:

psql

启动后的样子

postgres@88369f01b6a4:/$ service postgresql start
 * Starting PostgreSQL 14 database server  
postgres@88369f01b6a4:/$ psql                            ## 主要看这里下面的
psql (14.11 (Ubuntu 14.11-0ubuntu0.22.04.1))
Type "help" for help.

postgres=#      // 后面的命令在这里操作

4、在数据库中创建odoo用户:

create user odoo superuser;

5、使用\q 退出 PostgreSQL

Type "help" for help.

postgres=# \q        ## 退出命令
postgres@88369f01b6a4:/$         ## 可以看到有变化

2.7、修改数据库的访问权限

修改 PostgreSQL 对数据库的访问权限,这里的14是版本号,检查自己的版本

vim /etc/postgresql/14/main/pg_hba.conf

在大约90行添加odoo用户,将odoo用户改为免密登入,方便以后的操作

三、下载 ODOO

先在容器切换root用户!!!,先在容器先切换root用户!!!,先在容器先切换root用户!!!

很重要,很重要,很重要,很重要

在容器内切换root用户下载ODOO

3.1、在Docker容器中切换root用户

注意这里 直接切换肯定不行的,因为刚才在x用户

postgres@88369f01b6a4:/$ exit            # 先退出postgres用户
exit
root@88369f01b6a4:/#     

3.2、下载/上传ODOO源码文件

以下两种方法二选一

#### 3.2.1、ODOO17直接安装

把源码从github上下载到opt目录上

cd /opt

git clone https://github.com/odoo/odoo.git -b 17.0 --depth=1

3.2.2、指定版本|宿主机上传源码到容器

具体版本可以自行去Git下载:https://github.com/odoo/odoo

从宿主机上传ODOO16源码到Docker容器
执行过程:先从win主机 ==> Ubuntu ==> Docker容器

下载:
官方地址:https://github.com/odoo/odoo
123网盘:https://www.123pan.com/s/lfKDVv-ySQNH.html提取码:1122
上传Ubuntu:

可以使用Xftp上传到Ubuntu opt 目录

上传容器:

先查看容器ID:

docker exec -it odoo bash      # 重新进入容器,主机名就是容器ID

得到的id:   9d1b6052e67e

在Ubuntu终端执行:

docker cp Ubuntu软件位置 Docker容器ID:上传目录

docker cp /opt/odoo16.zip 9d1b6052e67e:/opt/

3.3、修改文件

cd /opt/odoo/                #    切换
vim requirements.txt            #    修改

将以下文件注释掉:

1.    python3-lxml
2.    python3-ldap
3.    python3-pillow
4.    python3-psycopg2
5.    python3-gevent

注释完保存退出

3.4、pip 安装ODOO必要组件

cd /opt/odoo/        
pip install -r requirements.txt 

3.5、将 ~/.local/bin 目录添加到当前用户的 PATH 环境变量中

# 要从root用户切换进来
su odoo 
vim ~/.profile 

添加:

export PATH=~/.local/bin:$PATH

3.6、配置odoo.conf文件

# 切换回容器的root
# 如果已经在odoo用户,用户exit退回到root

cd /opt/odoo

vim odoo.conf

添加:

[options]
db_host = False
db_port = False
db_user = odoo
db_password = False
addons_path = /opt/odoo/addons,/opt/odoo/odoo/addons,/home/develop
http_port=8888

3.7、启动odoo

# 从容器的root用户 切换回odoo用户

su odoo
$ cd /opt/odoo
$ ./odoo-bin -c odoo.conf

四、配置Host

4.1、Ubuntu配置

vim /etc/hosts

192.168.10.98    odoo98

4.2、windows配置host

把这个文件拖到桌面

C:\Windows\System32\drivers\etc

添加如下再拖回去:

192.168.10.98    odoo98

五、网页操作

http://odoo98:18888/

或

192.168.10.98:18888

注册:记得截图后面找不回来的。

使用刚才注册的邮箱登录

成功进入主页

最后修改:2024 年 04 月 10 日
咱们谁跟谁,用不着~