一、 安装postgres数据库

root@ubuntu-:~# docker run -d -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo --name db postgres:10.0

注:如果安装postgres其他版本可能会出现如下报错:

解决办法:

按照我的步骤重新安装postgres:10.0版本即可。

二、 安装odoo11

root@ubuntu-:~# docker run -p : --name odoo --link db:db -t odoo:

命令解释如下:
: // 第一个值是本地端口、第二个值是容器端口,就是说将本地8069端口和容器的8069端口做映射关系。
db:db // 注意:db不能修改,否则odoo运行时会报错。

1. Docker 安装完成Odoo将自动启动Odoo:

root@ubuntu-:~# docker ps -a

2. 访问odoo网站

如果开启防火墙需要添加规则:

root@ubuntu-:~# firewall-cmd --permanent --add-port=/tcp && firewall-cmd –reload

访问odoo网站http://你的ip:8069,显示如下:

填写相关信息:

安装成功:

三、将Odoo打包进行迁移

当我们在Odoo上开发项目完成时,需要交付给客户在生产环境上使用时,这是时候就能体现出Docker的特点了,直接打包迁移即可,不需要在客户环境上重新安装环境,只需要安装Docker。

1. 查看容器:

root@ubuntu-:~# docker ps -a

2. 使用 docker commit 命令来创建快照:

root@ubuntu-:~# docker commit -p c53315e04994 odoo-backup
root@ubuntu-:~# docker commit -p e35a1b97371e postgres-backup

3. 查看docker 镜像,已创建了两个快照镜像:

4. 将快照镜像进行打包:

root@ubuntu-:~# docker save -o postgres.tar postgres-backup
root@ubuntu-:~# docker save -o odoo.tar odoo-backup

5. 拷贝到目标服务器:

root@ubuntu-:~# scp postgres.tar root@172.16.1.4:/root
root@172.16.1.4's password:
root@ubuntu-:~# scp odoo.tar root@172.16.1.4:/root
root@172.16.1.4's password:

四、 在迁移的目标服务器操作

1. 使用 docker load 命令加载镜像:

[root@centos7 ~]# docker load -i postgres.tar
[root@centos7 ~]# docker load -i odoo.tar

2. 启动镜像:

[root@centos7 ~]# docker run -d -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo --name db postgres-backup
[root@centos7 ~]# docker run -p : --name odoo --link db:db -t odoo-backup // 跟刚开始安装时的命令一样;

3. 访问odoo界面:

注:需要将原始机器上的数据库导入过来。

4. 导出原始数据库(在第一台服务器上操作):

5. 导入备份数据即可实现迁移(在第二台服务器操作):

到迁移机器上打开URL导入备份数据库:

6. 重新登录:

到此就简单完成Odoo的迁移工作!

Docker安装Odoo实现快速迁移(四)的更多相关文章

  1. docker 及 docker-compose 的快速安装和简单使用

    本篇将使用 DaoCloud 源在 Ubuntu 上简单快速安装 docker 及 docker-compose 并添加了通过 Dockerfile 及 docker-compose.yml 使用 n ...

  2. docker安装kafka快速入门

    docker安装kafka快速入门 1.安装zookeeper docker search zookeeperdocker pull zookeeperdocker run -d -v /home/s ...

  3. Docker Compose + Traefik v2 快速安装, 自动申请SSL证书 http转https 初次尝试

    前言 昨晚闲得无聊睡不着觉,拿起服务器尝试部署了一下Docker + Traefik v2.1.6 ,以下是一些配置的总结,初次接触,大佬勿喷. 我的系统环境是 Ubuntu 18.04.3 LTS ...

  4. Docker 安装redis(四)

    Docker 安装redis 1.搜索docker镜像(可以看到搜索的结果,这个结果是按照一定的星级评价规则排序的) docker search redis 2.拉取docker的mysql镜像(如果 ...

  5. Docker安装websphere(四)

    在Docker容器里安装webshpere <!--前提:已经安装好了docker,能够正常使用.--> (1)docker安装websphere(需要账号和密码登录,不挂载数据卷) 获取 ...

  6. docker微服务部署之:四、安装docker、docker中安装mysql和jdk1.8、手动构建镜像、部署项目

    docker微服务部署之:三,搭建Zuul微服务项目 1.Centos7安装Docker 详见:Centos7安装Docker 2.Docker中安装jdk1.8 详见:使用Docker构建jdk1. ...

  7. docker快速入门01——docker安装与简单应用

    1.docker简介 Docker 是一个开源的应用容器引擎,Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化 ...

  8. [第四篇]——Windows Docker 安装之Spring Cloud直播商城 b2b2c电子商务技术总结

    Windows Docker 安装 Docker 并非是一个通用的容器工具,它依赖于已存在并运行的 Linux 内核环境. Docker 实质上是在已经运行的 Linux 下制造了一个隔离的文件环境, ...

  9. Centos7通过Docker安装Sentry(哨兵)

    Docker介绍 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制, ...

随机推荐

  1. laravel form表单提交

    控制器 中间层 中间层

  2. 1146 ID Codes

    题目链接: http://poj.org/problem?id=1146 题意: 给定一个字符串(长度不超过50), 求这个字符串的下一个字典序的字符串, 如果已经是最大字典序, 那么输出 " ...

  3. java免费空间!最简单的openshift免费空间上传代码教程!和FTP一样简单!

    史上最简单的openshift免费空间上传代码教程!没有之一! 最近因为想弄一个免费的空间,而且最好是Java的空间,找了一大片,jsp的空间少不说,免费的更是寥寥无几. 找了一大推垃圾空间,终于让我 ...

  4. 大前端涉猎之前后端交互总结3:使用PHP进行表单数据删除与查询

    1 首先:获取用户 id,根据id 删除指定的数据. 在链接完数据库之后,通过$_GET 超全局变量,获取删除的书内容 $id = $_GET['id']; 2 准备delete SQL语句: $sq ...

  5. Hadoop压缩之CompressionCodecFactory

    1.CompressionCodecFactory简介 当在读取一个压缩文件的时候,可能并不知道压缩文件用的是哪种压缩算法,那么无法完成解压任务.在Hadoop中,CompressionCodecFa ...

  6. A Multi-Sensorial Simultaneous Localization and Mapping (SLAM) System for Low-Cost Micro Aerial Vehicles in GPS-Denied Environments

    A Multi-Sensorial Simultaneous Localization and Mapping (SLAM) System for Low-Cost Micro Aerial Vehi ...

  7. hdu 4284 Travel(壮压DP&TSP&floyd)

    Travel Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Su ...

  8. 微信小程序实例代码

    http://blog.csdn.net/zuoliangzhu/article/details/53862576#t1 项目结构 └─ empty-folder/ ················· ...

  9. .net EventHandler 事件处理

    通常定义事件 都是通过自定义委托的方式来实现, 今天使用EventHandler   委托来定义事件: public class NewMailEventArgs : EventArgs { priv ...

  10. Java集合框架(Collection Framework)学习之 HashMap

    从API文档可以得到HashMap的以下几个特点: 基于哈希表(hash table)实现,并且是链式哈希表 允许空值和空键(null=null 键值对) HashMap与Hashtable基本相同, ...