установить openerp 7 с сервером БД на другом компьютере

Я пытаюсь установить openerp 7 на Ubuntu 12.04 внутри контейнера lxc. Сервер БД находится на хост-компьютере. Все работало нормально, но когда я пытаюсь получить доступ к веб-клиенту в первый раз, я получаю сообщение об ошибке в браузере (также и в терминале), что openerp не может подключиться к серверу БД. Вот мой файл openerp-server.conf:

[options]
; This is the password that allows database operations:
; admin_passwd = admin
debug_mode = True
db_host = '10.0.3.1'
db_port = 5432
db_user = openerp
db_password = openerp
db_name = openerp
logfile = /var/log/openerp/openerp-server.log

Я также пробовал с

db_host = 10.0.3.1

Когда я запускаю сервер, я получаю следующие информационные сообщения:

2013-01-08 22:46:39,688 654 INFO ? openerp: OpenERP version 7.0-20130106-001538
2013-01-08 22:46:39,688 654 INFO ? openerp: addons paths: /opt/openerp/server/openerp/addons
2013-01-08 22:46:39,688 654 INFO ? openerp: database hostname: localhost
2013-01-08 22:46:39,688 654 INFO ? openerp: database port: 5432
2013-01-08 22:46:39,688 654 INFO ? openerp: database user: openerp
2013-01-08 22:46:40,106 654 INFO ? openerp.service.wsgi_server: HTTP service (werkzeug) running on 0.0.0.0:8069
2013-01-08 22:46:40,106 654 INFO ? openerp: OpenERP server is running, waiting for connections...

Файл журнала имеет права доступа 777 и пуст. Это часть ошибки, когда я пытаюсь получить доступ к openerp из браузера:

ERROR postgres openerp.sql_db: Connection to the database failed
Traceback (most recent call last):
  File "/opt/openerp/server/openerp/sql_db.py", line 433, in borrow
    result = psycopg2.connect(dsn=dsn, connection_factory=PsycoConnection)
  File "/usr/lib/python2.7/dist-packages/psycopg2/__init__.py", line 179, in connect
    connection_factory=connection_factory, async=async)
OperationalError: could not connect to server: No such file or directory
    Is the server running locally and accepting
    connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

2013-01-08 22:48:21,553 654 ERROR postgres openerp.netsvc: could not connect to server: No such file or directory
    Is the server running locally and accepting
    connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
Traceback (most recent call last):
  File "/opt/openerp/server/openerp/netsvc.py", line 289, in dispatch_rpc
    result = ExportService.getService(service_name).dispatch(method, params)
  File "/opt/openerp/server/openerp/service/web_services.py", line 122, in dispatch
    return fn(*params)

Сервер db принимает соединения из контейнера lxc, я создал небольшой скрипт на Python, чтобы проверить это, и он сработал.

Спасибо


person cornel    schedule 08.01.2013    source источник
comment
Вероятная причина в том, что сервер не использует этот файл конфигурации.   -  person Daniel Reis    schedule 09.01.2013


Ответы (3)


Третья строка вашего вывода говорит, что OpenERP ищет сервер базы данных на localhost. Я предполагаю, что OE не видит ваш файл конфигурации. В качестве быстрого теста вы можете запустить OE вручную, например:

/usr/local/bin/openerp-server --conf /path/to/config_file

и посмотрите, работает ли это. Если это так, найдите соответствующий сценарий запуска и настройте его с помощью параметров файла конфигурации и файла журнала.

person Ethan Furman    schedule 08.01.2013

Недавно я установил OpenERP v7.0. Этот блог мне очень помогает. См. Установка OpenERP 7.0 в Ubuntu.

Надеюсь, что это поможет вам.

person Atul Arvind    schedule 09.01.2013

Я решил ту же проблему, изменив этот файл:

/usr/lib/python2.6/site-packages/openerp-7.0_20130211_002141-py2.6.egg/openerp/tools/config.py

Там есть раздел:

    if self.options['db_password']:
        if sys.platform == 'win32' and not self.options['db_host']:
            self.options['db_host'] = 'localhost'
        #if self.options['db_host']:
        #    self._generate_pgpassfile()

    if opt.save:
        self.save()

Перед "if op.save:" добавить:

    self.options['db_host'] = '<address_of_db_host>'
person frodi    schedule 11.02.2013