odoo12数据迁移问题
-
估计是你迁移前的addons路径和迁移后addons路径不一致造成的。
如果你进入“开发者模式”,然后点击“更新模块列表”,是不是会有2组名字一样的muk相关的apps。重新安装下应该就可以了。 -
@digitalsatori 新服务器导入数据库之后都无法登陆,一登陆就显示500错误,无法进入开发者模式。。。
-
可以在odoo的启动参数里重新初始化你的muk-theme,
odoo-bin -d YourDB -i muk-theme
把YourDB替换你的数据库名称, muk-theme替换为实际的主题addon名称
-
@digitalsatori 在docker里怎么执行这行命令呢?
-
试试下面这样:
docker-compose run --rm web odoo -d YourDB -i muk-theme --addons-path=/mnt/extra-addons
-
@digitalsatori
运行之后没有报错,更新:还是会报错,前面是数据库名弄错新建了个数据库才导致的无报错。
而且无法访问,似乎是8069端口没有映射出来?
以下是运行之后的日志root@v-1:~/odoo# docker-compose run --rm web odoo -d md2 -i muk_web_theme Starting odoo_db_1 ... Starting odoo_db_1 ... done 2019-12-11 06:27:17,227 1 INFO ? odoo: Odoo version 12.0-20191106 2019-12-11 06:27:17,228 1 INFO ? odoo: Using configuration file at /etc/odoo/odoo.conf 2019-12-11 06:27:17,229 1 INFO ? odoo: addons paths: ['/var/lib/odoo/addons/12.0', '/opt/odoo/addons', '/usr/lib/python3/dist-packages/odoo/addons'] 2019-12-11 06:27:17,231 1 INFO ? odoo: database: odoo@db:5432 2019-12-11 06:27:17,434 1 INFO ? odoo.addons.base.models.ir_actions_report: Will use the Wkhtmltopdf binary at /usr/local/bin/wkhtmltopdf 2019-12-11 06:27:17,667 1 INFO ? odoo.service.server: HTTP service (werkzeug) running on e8c6a7336a19:8069 2019-12-11 06:27:17,695 1 INFO md2 odoo.modules.loading: loading 1 modules... 2019-12-11 06:27:17,720 1 INFO md2 odoo.modules.loading: 1 modules loaded in 0.02s, 0 queries 2019-12-11 06:27:17,893 1 INFO md2 odoo.modules.loading: updating modules list 2019-12-11 06:27:17,901 1 INFO md2 odoo.addons.base.models.ir_module: ALLOW access to module.update_list on [] to user __system__ #1 via n/a 2019-12-11 06:27:18,910 1 ERROR md2 odoo.modules.graph: module muk_web_theme: Unmet dependencies: muk_web_utils 2019-12-11 06:27:18,910 1 ERROR md2 odoo.modules.graph: module muk_web_utils: Unmet dependencies: muk_autovacuum 2019-12-11 06:27:18,911 1 INFO md2 odoo.modules.loading: loading 62 modules... 2019-12-11 06:27:19,860 1 INFO md2 odoo.modules.loading: 62 modules loaded in 0.95s, 0 queries 2019-12-11 06:27:21,240 1 INFO md2 odoo.modules.loading: Modules loaded.
-
之前的命令里漏了
addons-path
你再试试 -
@digitalsatori 路径已经被我修改成和之前的服务器一样的路径
/opt/odoo/addons
了,执行这条命令日志输出如下root@v-1:~/odoo# docker-compose run --rm web odoo -d md2 -i muk_web_theme --addons-path=/opt/odoo/addons Starting odoo_db_1 ... done 2019-12-11 06:39:29,342 1 INFO ? odoo: Odoo version 12.0-20191106 2019-12-11 06:39:29,343 1 INFO ? odoo: Using configuration file at /etc/odoo/odoo.conf 2019-12-11 06:39:29,343 1 INFO ? odoo: addons paths: ['/var/lib/odoo/addons/12.0', '/opt/odoo/addons', '/usr/lib/python3/dist-packages/odoo/addons'] 2019-12-11 06:39:29,344 1 INFO ? odoo: database: odoo@db:5432 2019-12-11 06:39:29,521 1 INFO ? odoo.addons.base.models.ir_actions_report: Will use the Wkhtmltopdf binary at /usr/local/bin/wkhtmltopdf 2019-12-11 06:39:29,761 1 INFO ? odoo.service.server: HTTP service (werkzeug) running on 744949dbcdd6:8069 2019-12-11 06:39:29,781 1 INFO md2 odoo.modules.loading: loading 1 modules... 2019-12-11 06:39:29,810 1 INFO md2 odoo.modules.loading: 1 modules loaded in 0.03s, 0 queries 2019-12-11 06:39:29,971 1 INFO md2 odoo.modules.loading: updating modules list 2019-12-11 06:39:29,976 1 INFO md2 odoo.addons.base.models.ir_module: ALLOW access to module.update_list on [] to user __system__ #1 via n/a 2019-12-11 06:39:31,021 1 ERROR md2 odoo.modules.graph: module muk_web_theme: Unmet dependencies: muk_web_utils 2019-12-11 06:39:31,022 1 ERROR md2 odoo.modules.graph: module muk_web_utils: Unmet dependencies: muk_autovacuum 2019-12-11 06:39:31,023 1 INFO md2 odoo.modules.loading: loading 62 modules... 2019-12-11 06:39:32,017 1 INFO md2 odoo.modules.loading: 62 modules loaded in 0.99s, 0 queries 2019-12-11 06:39:33,424 1 INFO md2 odoo.modules.loading: Modules loaded.
-
这样执行命令是不对的,因为在你的docker-compose.yml文件中是这样定义的:
volumes: - odoo-web-data:/var/lib/odoo - ./config:/etc/odoo - ./addons:/mnt/extra-addons
所以你的muk-xxx这些外部addon是放在docker 目录下addons子目录中然后映射到docker的
/mnt/extra-addons
目录的
所以docker中的Odoo需要指定一个addons目录指向/mnt/extra-addons
-
@digitalsatori docker-compose.yml文件已经改了
root@v-1:~/odoo# cat docker-compose.yml version: '2' services: web: image: odoo:12.0 depends_on: - db ports: - "8069:8069" volumes: - odoo-web-data:/var/lib/odoo - ./config:/etc/odoo - ./addons:/opt/odoo/addons db: image: postgres:10 environment: - POSTGRES_DB=postgres - POSTGRES_PASSWORD=odoo - POSTGRES_USER=odoo - PGDATA=/var/lib/postgresql/data/pgdata volumes: - odoo-db-data:/var/lib/postgresql/data/pgdata volumes: odoo-web-data: odoo-db-data:
odoo.conf文件也一并修改
root@v-1:~/odoo# cat ./config/odoo.conf [options] addons_path = /opt/odoo/addons data_dir = /var/lib/odoo admin_passwd = adminpassword
这样应该没问题吧?还是全部修改成和之前一样再试试?
-
全部改回来了,结果一样
root@v-1:~/odoo# docker-compose run --rm web odoo -d md2 -i muk_web_theme --addons-path=/mnt/extra-addons Starting odoo_db_1 ... Starting odoo_db_1 ... done 2019-12-11 07:08:51,785 1 INFO ? odoo: Odoo version 12.0-20191106 2019-12-11 07:08:51,786 1 INFO ? odoo: Using configuration file at /etc/odoo/odoo.conf 2019-12-11 07:08:51,788 1 INFO ? odoo: addons paths: ['/var/lib/odoo/addons/12.0', '/mnt/extra-addons', '/usr/lib/python3/dist-packages/odoo/addons'] 2019-12-11 07:08:51,789 1 INFO ? odoo: database: odoo@db:5432 2019-12-11 07:08:51,983 1 INFO ? odoo.addons.base.models.ir_actions_report: Will use the Wkhtmltopdf binary at /usr/local/bin/wkhtmltopdf 2019-12-11 07:08:52,217 1 INFO ? odoo.service.server: HTTP service (werkzeug) running on 32e8ca14f02d:8069 2019-12-11 07:08:52,253 1 INFO md2 odoo.modules.loading: loading 1 modules... 2019-12-11 07:08:52,286 1 INFO md2 odoo.modules.loading: 1 modules loaded in 0.03s, 0 queries 2019-12-11 07:08:52,489 1 INFO md2 odoo.modules.loading: updating modules list 2019-12-11 07:08:52,497 1 INFO md2 odoo.addons.base.models.ir_module: ALLOW access to module.update_list on [] to user __system__ #1 via n/a 2019-12-11 07:08:53,613 1 ERROR md2 odoo.modules.graph: module muk_web_utils: Unmet dependencies: muk_autovacuum 2019-12-11 07:08:53,614 1 ERROR md2 odoo.modules.graph: module muk_web_theme: Unmet dependencies: muk_web_utils 2019-12-11 07:08:53,615 1 INFO md2 odoo.modules.loading: loading 62 modules... 2019-12-11 07:08:54,556 1 INFO md2 odoo.modules.loading: 62 modules loaded in 0.94s, 0 queries 2019-12-11 07:08:56,019 1 INFO md2 odoo.modules.loading: Modules loaded.
-
虽然仍然有dependencies的报错,但是系统看起来是正常的启动状态啊,访问系统显示什么?
-
@digitalsatori 无法访问,似乎8069端口没有进行映射
-
我怀疑你之前的docker没有停掉,又用docker-compose新启了容器。
docker ps
看一下,多个容器都对外映射8069端口就冲突了嘛
你可以用docker-compose down
或
docker rm xxxx
来干掉容器,确保docker ps 下没有运行中的容器了,再用之前的命令行启动
-
运行此行命令之前我已经使用
docker-compose stop
停止在运行的容器了
运行此命令之后看容器的运行情况如下root@v-1:~# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 750e72e9ce65 odoo:12.0 "/entrypoint.sh odoo…" 9 seconds ago Up 7 seconds 8069/tcp, 8071/tcp odoo_web_run_1 bc78100efb3b odoo:12.0 "/entrypoint.sh odoo" 6 hours ago Exited (0) 3 hours ago odoo_web_1 6d31bedbe487 postgres:10 "docker-entrypoint.s…" 5 days ago Up 9 seconds 5432/tcp odoo_db_1
-
第一个运行中的docker确实没有端口映射出来。
如果猜得没错的话,你运行那个命令并没有在docker-compose.yml
文件所在的目录下运行,所以该文件所定义的端口映射没有起作用。 -
@digitalsatori 确定工作目录是在docker-compose.yml所在的文件件,如果在别的路径以上命令根本无法运行。
root@v-1:~# docker-compose run --rm web odoo -d md2 -i muk_web_theme --addons-path=/mnt/extra-addons ERROR: Can't find a suitable configuration file in this directory or any parent. Are you in the right directory? Supported filenames: docker-compose.yml, docker-compose.yaml
之前我贴出来的日志都有带路径的,你可以看下,我的工作目录是~/odoo
-
哈哈,回答你的问题也让我学到了:https://github.com/docker/compose/issues/1259
docker-compose run
命令竟然是不理会docker-compose.yml
文件中的ports设定的,如果需要强制映射,需要加参数--service-ports
所以你的命令就应该是:docker-compose run --rm --service-ports web odoo -d md2 -i muk_web_theme --addons-path=/mnt/extra-addons
-
@digitalsatori 在 odoo12数据迁移问题 中说:
docker-compose run --rm --service-ports web odoo -d md2 -i muk_web_theme --addons-path=/mnt/extra-addons
可以访问了,和之前的问题一样,启动时日志提示错误,两个未知依赖项
muk_web_utils
和muk_autovacuum
,前台访问后日志显示登陆成功,之后再报一个错误ERROR md2 werkzeug: Error on request:
完整的日志如下
root@v-1:~/odoo# docker-compose run --rm --service-ports web odoo -d md2 -i muk_web_theme --addons-path=/mnt/extra-addons | grep ERROR Starting odoo_db_1 ... Starting odoo_db_1 ... done 2019-12-12 05:55:30,117 1 ERROR md2 odoo.modules.graph: module muk_web_theme: Unmet dependencies: muk_web_utils 2019-12-12 05:55:30,117 1 ERROR md2 odoo.modules.graph: module muk_web_utils: Unmet dependencies: muk_autovacuum 2019-12-12 05:55:41,807 1 ERROR md2 werkzeug: Error on request: