Closed stu-h closed 5 years ago
Hi there,
I attempted to try out LEMUR using docker but couldn't login, looking at the logs I get a stream of database errors (see below). Any pointers?
lemur-web_1 | Attempt to connect to db.. try #2 lemur-web_1 | ?column? lemur-web_1 | ---------- lemur-web_1 | 1 lemur-web_1 | (1 row) lemur-web_1 | lemur-web_1 | db ready! lemur-web_1 | lemur-web_1 | Creating lemurdb... lemur-web_1 | CREATE DATABASE lemur-web_1 | Creating the lemur user... lemur-web_1 | CREATE ROLE lemur-web_1 | Changing postgres password... lemur-web_1 | GRANT lemur-web_1 | Done changing postgres password... lemur-web_1 | DONE CREATING lemurdb... lemur-web_1 | /usr/local/src/lemur/venv/lib/python3.5/site-packages/psycopg2/__init__.py:144: UserWarning: The psycopg2 wheel package will be renamed from release 2.8; in order to keep installing from binary please use "pip install psycopg2-binary" instead. For details see: <http://initd.org/psycopg/docs/install.html#binary-install-from-pypi>. lemur-web_1 | """) lemur-web_1 | Traceback (most recent call last): lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/base.py", line 1244, in _execute_context lemur-web_1 | cursor, statement, parameters, context lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/default.py", line 552, in do_execute lemur-web_1 | cursor.execute(statement, parameters) lemur-web_1 | psycopg2.ProgrammingError: operator class "gin_trgm_ops" does not exist for access method "gin" lemur-web_1 | lemur-web_1 | lemur-web_1 | The above exception was the direct cause of the following exception: lemur-web_1 | lemur-web_1 | Traceback (most recent call last): lemur-web_1 | File "manage.py", line 551, in <module> lemur-web_1 | main() lemur-web_1 | File "manage.py", line 547, in main lemur-web_1 | manager.run() lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/flask_script/__init__.py", line 417, in run lemur-web_1 | result = self.handle(argv[0], argv[1:]) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/flask_script/__init__.py", line 386, in handle lemur-web_1 | res = handle(*args, **config) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/flask_script/commands.py", line 216, in __call__ lemur-web_1 | return self.run(*args, **kwargs) lemur-web_1 | File "manage.py", line 195, in run lemur-web_1 | create() lemur-web_1 | File "manage.py", line 145, in create lemur-web_1 | database.db.create_all() lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/flask_sqlalchemy/__init__.py", line 963, in create_all lemur-web_1 | self._execute_for_all_tables(app, bind, 'create_all') lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/flask_sqlalchemy/__init__.py", line 955, in _execute_for_all_tables lemur-web_1 | op(bind=self.get_engine(app, bind), **extra) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/sql/schema.py", line 4287, in create_all lemur-web_1 | ddl.SchemaGenerator, self, checkfirst=checkfirst, tables=tables lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/base.py", line 2033, in _run_visitor lemur-web_1 | conn._run_visitor(visitorcallable, element, **kwargs) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/base.py", line 1607, in _run_visitor lemur-web_1 | visitorcallable(self.dialect, self, **kwargs).traverse_single(element) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/sql/visitors.py", line 131, in traverse_single lemur-web_1 | return meth(obj, **kw) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/sql/ddl.py", line 781, in visit_metadata lemur-web_1 | _is_metadata_operation=True, lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/sql/visitors.py", line 131, in traverse_single lemur-web_1 | return meth(obj, **kw) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/sql/ddl.py", line 833, in visit_table lemur-web_1 | self.traverse_single(index) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/sql/visitors.py", line 131, in traverse_single lemur-web_1 | return meth(obj, **kw) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/sql/ddl.py", line 862, in visit_index lemur-web_1 | self.connection.execute(CreateIndex(index)) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/base.py", line 988, in execute lemur-web_1 | return meth(self, multiparams, params) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/sql/ddl.py", line 72, in _execute_on_connection lemur-web_1 | return connection._execute_ddl(self, multiparams, params) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/base.py", line 1050, in _execute_ddl lemur-web_1 | compiled, lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/base.py", line 1248, in _execute_context lemur-web_1 | e, statement, parameters, cursor, context lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/base.py", line 1466, in _handle_dbapi_exception lemur-web_1 | util.raise_from_cause(sqlalchemy_exception, exc_info) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/util/compat.py", line 383, in raise_from_cause lemur-web_1 | reraise(type(exception), exception, tb=exc_tb, cause=cause) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/util/compat.py", line 128, in reraise lemur-web_1 | raise value.with_traceback(tb) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/base.py", line 1244, in _execute_context lemur-web_1 | cursor, statement, parameters, context lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/default.py", line 552, in do_execute lemur-web_1 | cursor.execute(statement, parameters) lemur-web_1 | sqlalchemy.exc.ProgrammingError: (psycopg2.ProgrammingError) operator class "gin_trgm_ops" does not exist for access method "gin" lemur-web_1 | lemur-web_1 | [SQL: CREATE INDEX ix_domains_name_gin ON domains USING gin (name gin_trgm_ops)] lemur-web_1 | (Background on this error at: http://sqlalche.me/e/f405) lemur-web_1 | /usr/local/src/lemur/venv/lib/python3.5/site-packages/psycopg2/__init__.py:144: UserWarning: The psycopg2 wheel package will be renamed from release 2.8; in order to keep installing from binary please use "pip install psycopg2-binary" instead. For details see: <http://initd.org/psycopg/docs/install.html#binary-install-from-pypi>. lemur-web_1 | """) lemur-web_1 | [2019-04-03 10:57:40 +0000] [63] [INFO] Starting gunicorn 19.9.0 lemur-web_1 | [2019-04-03 10:57:40 +0000] [63] [INFO] Listening at: http://0.0.0.0:8000 (63) lemur-web_1 | [2019-04-03 10:57:40 +0000] [63] [INFO] Using worker: sync lemur-web_1 | [2019-04-03 10:57:40 +0000] [68] [INFO] Booting worker with pid: 68 lemur-web_1 | [2019-04-03 10:57:40 +0000] [69] [INFO] Booting worker with pid: 69 lemur-web_1 | [2019-04-03 10:57:40 +0000] [70] [INFO] Booting worker with pid: 70 lemur-web_1 | [2019-04-03 10:57:40 +0000] [71] [INFO] Booting worker with pid: 71 lemur-web_1 | [2019-04-03 10:57:40 +0000] [72] [INFO] Booting worker with pid: 72 lemur-web_1 | [2019-04-03 10:57:40 +0000] [73] [INFO] Booting worker with pid: 73 lemur-web_1 | [2019-04-03 10:58:38,499] ERROR in app: Exception on /api/1/auth/login [POST] lemur-web_1 | Traceback (most recent call last): lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/base.py", line 1244, in _execute_context lemur-web_1 | cursor, statement, parameters, context lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/default.py", line 552, in do_execute lemur-web_1 | cursor.execute(statement, parameters) lemur-web_1 | psycopg2.ProgrammingError: relation "users" does not exist lemur-web_1 | LINE 2: FROM users lemur-web_1 | ^ lemur-web_1 | lemur-web_1 | lemur-web_1 | The above exception was the direct cause of the following exception: lemur-web_1 | lemur-web_1 | Traceback (most recent call last): lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/flask/app.py", line 1813, in full_dispatch_request lemur-web_1 | rv = self.dispatch_request() lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/flask/app.py", line 1799, in dispatch_request lemur-web_1 | return self.view_functions[rule.endpoint](**req.view_args) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/flask_restful/__init__.py", line 458, in wrapper lemur-web_1 | resp = resource(*args, **kwargs) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/flask/views.py", line 88, in view lemur-web_1 | return self.dispatch_request(*args, **kwargs) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/flask_restful/__init__.py", line 573, in dispatch_request lemur-web_1 | resp = meth(*args, **kwargs) lemur-web_1 | File "/usr/local/src/lemur/lemur/auth/views.py", line 262, in post lemur-web_1 | user = user_service.get_by_username(args['username']) lemur-web_1 | File "/usr/local/src/lemur/lemur/users/service.py", line 109, in get_by_username lemur-web_1 | return database.get(User, username, field='username') lemur-web_1 | File "/usr/local/src/lemur/lemur/database.py", line 137, in get lemur-web_1 | return query.filter(get_model_column(model, field) == value).scalar() lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/orm/query.py", line 3305, in scalar lemur-web_1 | ret = self.one() lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/orm/query.py", line 3275, in one lemur-web_1 | ret = self.one_or_none() lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/orm/query.py", line 3244, in one_or_none lemur-web_1 | ret = list(self) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/orm/query.py", line 3317, in __iter__ lemur-web_1 | return self._execute_and_instances(context) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/orm/query.py", line 3342, in _execute_and_instances lemur-web_1 | result = conn.execute(querycontext.statement, self._params) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/base.py", line 988, in execute lemur-web_1 | return meth(self, multiparams, params) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/sql/elements.py", line 287, in _execute_on_connection lemur-web_1 | return connection._execute_clauseelement(self, multiparams, params) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/base.py", line 1107, in _execute_clauseelement lemur-web_1 | distilled_params, lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/base.py", line 1248, in _execute_context lemur-web_1 | e, statement, parameters, cursor, context lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/base.py", line 1466, in _handle_dbapi_exception lemur-web_1 | util.raise_from_cause(sqlalchemy_exception, exc_info) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/util/compat.py", line 383, in raise_from_cause lemur-web_1 | reraise(type(exception), exception, tb=exc_tb, cause=cause) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/util/compat.py", line 128, in reraise lemur-web_1 | raise value.with_traceback(tb) lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/base.py", line 1244, in _execute_context lemur-web_1 | cursor, statement, parameters, context lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/default.py", line 552, in do_execute lemur-web_1 | cursor.execute(statement, parameters) lemur-web_1 | sqlalchemy.exc.ProgrammingError: (psycopg2.ProgrammingError) relation "users" does not exist lemur-web_1 | LINE 2: FROM users lemur-web_1 | ^ lemur-web_1 | lemur-web_1 | [SQL: SELECT users.id AS users_id, users.password AS users_password, users.active AS users_active, users.confirmed_at AS users_confirmed_at, users.username AS users_username, users.email AS users_email, users.profile_picture AS users_profile_picture lemur-web_1 | FROM users lemur-web_1 | WHERE users.username = %(username_1)s] lemur-web_1 | [parameters: {'username_1': 'lemur'}] lemur-web_1 | (Background on this error at: http://sqlalche.me/e/f405) lemur-web_1 | Exception on /api/1/auth/login [POST] lemur-web_1 | Traceback (most recent call last): lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/base.py", line 1244, in _execute_context lemur-web_1 | cursor, statement, parameters, context lemur-web_1 | File "/usr/local/src/lemur/venv/lib/python3.5/site-packages/sqlalchemy/engine/default.py", line 552, in do_execute lemur-web_1 | cursor.execute(statement, parameters) lemur-web_1 | psycopg2.ProgrammingError: relation "users" does not exist lemur-web_1 | LINE 2: FROM users lemur-web_1 |
Fixed by #38
Hi there,
I attempted to try out LEMUR using docker but couldn't login, looking at the logs I get a stream of database errors (see below). Any pointers?