一,制作一个自己的odoo镜像odoo:yto

1,下载一个odoo10的镜像

docker pull odoo:10.0

2,按照自己的意愿修改里面的内容

docker run -it -u root --name odoo-yto odoo:10.0 /bin/bash

安装必要的软件并用vim修改内容

apt-get update
apt-get install -y --no-install-recommends vim iputils-ping net-tools iproute2 wget cd /usr/lib/python2./dist-packages/odoo
vim addons/web/views/webclient_templates.xml
ls addons/web/static/src/img/logo_inverse_white_206px.png
vim addons/web/static/src/xml/base.xml
vim addons/web/static/src/js/abstract_web_client.js
vim addons/web/static/src/js/views/list_view.js

有模块需要simplejson-3.5.2.tar.gz,下载安装

cd /root
wget https://pypi.python.org/packages/source/s/simplejson/simplejson-3.5.2.tar.gz#md5=10ff73aa857b01472a51acb4848fcf8b --no-check-certificate
chown odoo:odoo simplejson-3.5..tar.gz
tar vxzf simplejson-3.5..tar.gz
cd simplejson-3.5./
python setup.py install

修改odoo的原配置文件改一个名字,运行时用自己的配置文件

mv /etc/odoo/odoo.conf /etc/odoo/odoo_back.conf 

退出后提交镜像

exit
docker commit -m "odoo-yto" 286f3e2f6a6c ×××fudonghai/odoo:ytov1

如果容器退出就要启动后重新进入(非必须)

docker start 57f370ef77ae
docker exec -it -u root 57f370ef77ae /bin/bash

最后推送

docker push ***fudonghai/odoo:ytov1

二,在一台新机器上运行odoo:yto1

建立自定义目录

mkdir -p /usr/docker/odoo/{addons,filestore,sessions,config}
chown -R odoo:odoo /usr/docker/odoo

放入自己的配置文件/usr/docker/odoo/config/odoo.conf

[options]
addons_path = /mnt/extra-addons,/usr/lib/python2./dist-packages/odoo/addons
data_dir = /var/lib/odoo
db_host = 172.17.0.1
db_name = odoo10
db_password = odoodbyto1
db_user = odoo
db_template = template0

注意这里的主机db_host是172.17.0.1,就是通过网桥指向宿主机的IP。在容器内127.0.0.1代表自己,非宿主机

下载镜像

docker pull ***fudonghai/odoo:ytov1

启动命令

两步法:

docker run -v /usr/docker/odoo/addons:/mnt/extra-addons -v /usr/docker/odoo/config:/etc/odoo -p 8069:8069 --name odoo  -t odoo:ytov1

但是这个命令并不能启动odoo,目前启动odoo需要输入odoo命令

docker exec -t fa51 odoo
然后CTRL + C 退出

一步法:把上面命令合并,注意最后一个odoo是运行命令

docker run -v /usr/docker/odoo/addons:/mnt/extra-addons -v /usr/docker/odoo/config:/etc/odoo -p : --name odoo1  -t fudonghai/odoo:ytov1 odoo

三,一个测试,非必须

为了测试容器内到底能不能连接到数据库,安装psql

apt-get install postgresql-client

在容器里面使用下面语句测试是否能连接到数据库

psql --command "select * from m_part;" "hostaddr=172.17.0.1 port=5432 user=odoo password=odoodb×××1 dbname=odoo10"

在更改了宿主机的postgresql监听地址后,测试成功

【笔记】Docker部署Odoo的更多相关文章

  1. [转] docker 部署 odoo

    [From] https://blog.csdn.net/qq_36178641/article/details/79775153 1.安装大象数据库. docker run -d -e POSTGR ...

  2. Docker学习笔记 - Docker部署nginx网站

    一.制作 nginx 镜像 1.下载配置文件 mkdir /opt/nginx_docker && cd /opt/nginx_docker mkdir nginx && ...

  3. 运维笔记--docker odoo镜像 运行异常处理

    场景描述: 镜像来源,dockerhub odoo官方镜像:https://hub.docker.com/_/odoo odoo镜像运行一段时间后,出现下述异常,可能是触发某个未知bug:该现象在生产 ...

  4. Docker学习笔记三:Docker部署Java web系统

    Docker部署Java Web系统 1.在root目录下创建一个路径test/app mkdir test && cd test&& mkdir app && ...

  5. 笔记14:Docker 部署Python项目

    Docker 部署Python项目 导读: 软件开发最大的麻烦事之一就是环境配置,操作系统设置,各种库和组件的安装.只有它们都正确,软件才能运行.如果从一种操作系统里面运行另一种操作系统,通常我们采取 ...

  6. Docker 部署mysql

    目录 Docker 部署mysql 步骤 1.查找 Docker Hub 上的 MySQL 镜像 2.docker pull mysql 拉取镜像 3.运行容器 4.查看容器启动情况 使用命令备注 D ...

  7. AspNetCore容器化(Docker)部署(四) —— Jenkins自动化部署

    一.前言 (Jenkins.Docker.Git/Svn组建一套简单的自动化发布流程) 文章中用到的相关服务器角色 角色 环境 功能 开发机 Win10.Docker(Linux OS) 编码.调试 ...

  8. Docker学习笔记 — Docker私有仓库搭建

    Docker学习笔记 — Docker私有仓库搭建   目录(?)[-] 环境准备 搭建私有仓库 测试 管理仓库中的镜像 查询 删除 Registry V2   和Mavan的管理一样,Dockers ...

  9. 用Docker部署自己的JupyterHub

    [话在前头] 用 Docker 部署 JupyterLab 感觉是部署 JupyterLab 最方便的方式了,官方提供了很多可选的镜像,也可以自己从 jupyter/base-notebook 中继续 ...

随机推荐

  1. Elasticsearch:运用scroll接口对大量数据实现更好的分页

    在Elasticsearch中,我们可以通过size和from来对我们的结果来进行分页.但是对于数据量很大的索引,这是有效的吗?Scroll API可用于从单个搜索请求中检索大量结果(甚至所有结果), ...

  2. crontab踩坑(一)

    因为 我们用conda托管了python虚拟环境,我自身的环境是wqbin,本来crontab脚本的命令是如下: 发生了如下的报错: 因为这里的环境是启动的是base的 所以找不相应的模块.于是我在执 ...

  3. SuperSocket实例

    下载地址:https://files.cnblogs.com/files/xixixing/ConsoleApp.zip 创建控制台应用程序:ConsoleApp MySession.cs using ...

  4. MySQL基础练习01--牛客网

    目录 1 查找最晚入职员工的信息 2 查找入职第三晚的员工信息 3 查找当前薪水详情及部门编号 4 查找所有员工入职时的薪水情况 5 查找已分配员工姓名 6 查找员工姓名 7 查找涨薪找过15次的员工 ...

  5. not(expr|ele|fn)从匹配元素的集合中删除与指定表达式匹配的元素

    not(expr|ele|fn) 概述 从匹配元素的集合中删除与指定表达式匹配的元素   参数 exprStringV1.0 一个选择器字符串.深圳dd马达 elementDOMElementV1.0 ...

  6. useradd/usermod/userdel/passwd/groupadd/groupmod/groupdel/gpasswd

    用户 用户系统也是通过一个文件来管理的,默认的root用户id是0, shadow文件说明 加密算法类别 $后面的数字6指定了加密算法使用的是第六种,sha512加密 增加用户,修改成同样的密码,查看 ...

  7. OI程序常见的设计陷阱

    宏定义的问题 有时候为了方便,我会大量使用宏定义.但是最近我发现下面这两个宏定义老是出问题: #define SET(x,a) memset(x,a,sizeof(x)) inline void wo ...

  8. SSO 断点登陆

    1. 摘要 ( 注意:请仔细看下摘要,留心此文是否是您的菜,若浪费宝贵时间,深感歉意!!!) SSO这一概念由来已久,网络上对应不同场景的成熟SSO解决方案比比皆是,从简单到复杂,各式各样应有尽有!开 ...

  9. python-解决pip安装速度慢的问题--豆瓣镜像

    https://www.cnblogs.com/ZhangRuoXu/p/6370107.html https://blog.csdn.net/tianguiyuyu/article/details/ ...

  10. Win10+ Clion + 树莓派 + QT进行远程qt程序开发

    环境配置 环境配置 Windows上:QT5 + CLion 硬件上:一只可联网.可ssh连接且装有QT5的树莓派 暂时还没想好... 树莓派安装qt sudo apt-get update sudo ...