01 升级更新一下服务器
sudo apt update -y &sudo apt upgrade -y
02 安装Openssh
sudo apt install openssh-server -y
03 安装docker
sudo apt install docker.io
04 添加当前用户到docker组,以后docker命令就不sudo了
sudo gpasswd -a ${USER} docker
05 重启docker
sudo service docker restart
06 切换当前会话到新 group
newgrp - docker
07 安装docker compose
sudo curl -L https://github.com/docker/compose/releases/download/1.18.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version
08 可选配置:
配置阿里个人镜像加速
#注册阿里的账户,阿里会分配给你一个个人的镜像加速地址:
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://XXXXXX.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
docker info#查看下是否已经做好镜像加速
09 安装数据库运行PostgreSQL 容器
docker run -v 主机postgresql的main路径:容器postgresql的main路径 -d -e POSTGRES_USER=数据库用户 -e POSTGRES_PASSWORD=数据密码 --name 数据库容器名称 postgres:数据库版本
10 安装运行ODOO容器并与数据库对接
docker run -it -p 8069:8069 -v 主机ODOO路径:容器ODOO路径 --name ODOO容器名称 --link 数据库容器名称:数据库容器名称 -t ubuntu:16.04 '/bin/bash'
11 将容器源文件改名
cp /etc/apt/sources.list /etc/apt/sources.list.old
12 退出容器
exit
13 启动容器
docker start odoo_server1
14 替换容器源文件
docker cp /etc/apt/sources.list odoo_server1:/etc/apt/
15 进入容器
docker exec -it odoo_server1 bash
16 升级更新一下服务器
sudo apt update -y &sudo apt upgrade -y
17 添加用户
adduser odoo:odoo[postfix[-1]]
18 安装python3以及插件
apt install python3
apt install python3-pip
apt install build-essential python3-dev libxslt-dev libzip-dev libldap2-dev libsasl2-dev
可选安装:
#Virtaulenvwrapper是virtualenv的扩展包,用于更方便管理虚拟环境,它可以做:
1 将所有虚拟环境整合在一个目录下
2 管理(新增,删除,复制)虚拟环境
3 快速切换虚拟环境
apt install virtualenvwrapper
source /usr/share/virtualenvwrapper/virtualenvwrapper.sh
设置odoo 为sudo组
su odoo
mkvirtualenv -p /usr/bin/python3 odoo-venv
which python3
19 批量智能安装其他扩展包,CD到源码目录用pip3执行requirements.txt脚本文件
pip3 install -r requirements.txt
20 安装less
apt-get install -y npm
ln -s /usr/bin/nodejs /usr/bin/node
npm install -g less
21 查看ODOO的地址
docker inspect ODOO容器名称 | grep IPAddress
22 根据查到的IP地址建立nginx配置文件
touch my_nginx.conf
nano my_nginx.conf
#输入以下配置
server {
listen 80;
location / {
proxy_pass http://查到的odoo容器IP:8069 #用nginx容器的80端口反向代理Odoo容器的8069端口。
}
}
#CTRL+X Y保存
23 安装运行nginx并将配置文件挂载到容器,用容器宿主的8080端口映射nginx容器的80端口
sudo apt-get install nginx
docker run -d --name ng -p 8080:80 -v /home/limbo/my_nginx.conf:/etc/nginx/conf.d/default.conf nginx
24 安装UI FOR DOCKER看下容器的情况
docker run -d -p 9000:9000 --name dockerUI --privileged -v /var/run/docker.sock:/var/run/docker.sock uifd/ui-for-docker
25 验证下
虚拟机内网IP:8000 uifordocker的界面,web管理docker
虚拟机内网IP:80 nginx欢迎页
虚拟机内网IP:8080 ODOO(过反向代理)
虚拟机内网IP:8069 ODOO
经测试OK。
容器部署的好处是显而易见的,速度快,一共三条命令即可搞定部署。后续使用Docker comPose部署会更加便利