Re: Proposal for changes in official Docker image - Mailing list pgadmin-hackers

From Dave Page
Subject Re: Proposal for changes in official Docker image
Date
Msg-id CA+OCxoxzSzU=mvTJWryXeCYg5T1rSOPW+N=d_6SAW=Cz1efJiA@mail.gmail.com
Whole thread Raw
In response to Re: Proposal for changes in official Docker image  (Максим Кольцов <kolmax94@gmail.com>)
List pgadmin-hackers
Hi

On Sat, Mar 31, 2018 at 5:54 PM, Максим Кольцов <kolmax94@gmail.com> wrote:
2018-03-19 17:55 GMT+03:00 Dave Page <dpage@pgadmin.org>:
>
> - PGADMIN_SERVER_NAME doesn't appear to be supported. This was added at user
> request, for security reasons (to help ensure the connection is going where
> expected). I'm not entirely convinced of the value of that, but if it's
> fairly painless to add, it may well be worth it.

Can you explain the meaning of this option, or maybe give me a link to
original feature request?
As far as I understand, Apache uses this to identify virtual hosts
based on HTTP Host header,
but there are no virtual hosts in Gunicorn, so no need for this.

Yeah, I looked back at the history on this - it was an Apache requirement, essentially to avoid confusing SNI. If Gunicorn doesn't support virtual hosts, then I agree there's no longer a need for this.
 

> - If you don't map /var/lib/pgadmin (in my case, to a directory already
> containing a config), then I was seeing the following error. I would expect
> it to init within the container if the config directory isn't mapped:
>
> piranha:web dpage$ docker logs affectionate_spence
> sh: -z: unknown operand
> NOTE: Configuring authentication for SERVER mode.
>
> Enter the email address and password to use for the initial pgAdmin user
> account:
>
> Traceback (most recent call last):
>   File "run_pgadmin.py", line 4, in <module>
>     from pgAdmin4 import app
>   File "/pgadmin4/pgAdmin4.py", line 67, in <module>
>     app = create_app()
>   File "/pgadmin4/pgadmin/__init__.py", line 306, in create_app
>     db_upgrade(app)
>   File "/pgadmin4/pgadmin/setup/db_upgrade.py", line 25, in db_upgrade
>     flask_migrate.upgrade(migration_folder)
>   File "/usr/local/lib/python3.6/site-packages/flask_migrate/__init__.py",
> line 244, in upgrade
>     command.upgrade(config, revision, sql=sql, tag=tag)
>   File "/usr/local/lib/python3.6/site-packages/alembic/command.py", line
> 254, in upgrade
>     script.run_env()
>   File "/usr/local/lib/python3.6/site-packages/alembic/script/base.py", line
> 427, in run_env
>     util.load_python_file(self.dir, 'env.py')
>   File "/usr/local/lib/python3.6/site-packages/alembic/util/pyfiles.py",
> line 81, in load_python_file
>     module = load_module_py(module_id, path)
>   File "/usr/local/lib/python3.6/site-packages/alembic/util/compat.py", line
> 83, in load_module_py
>     spec.loader.exec_module(module)
>   File "/pgadmin4/pgadmin/setup/../../migrations/env.py", line 94, in
> <module>
>     run_migrations_online()
>   File "/pgadmin4/pgadmin/setup/../../migrations/env.py", line 87, in
> run_migrations_online
>     context.run_migrations()
>   File "<string>", line 8, in run_migrations
>   File
> "/usr/local/lib/python3.6/site-packages/alembic/runtime/environment.py",
> line 836, in run_migrations
>     self.get_context().run_migrations(**kw)
>   File
> "/usr/local/lib/python3.6/site-packages/alembic/runtime/migration.py", line
> 330, in run_migrations
>     step.migration_fn(**kw)
>   File "/pgadmin4/migrations/versions/fdc58d9bd449_.py", line 112, in
> upgrade
>     email, password = user_info()
>   File "/pgadmin4/pgadmin/setup/user_info.py", line 55, in user_info
>     email = input("Email address: ")
> EOFError: EOF when reading a line
> [2018-03-19 14:50:59 +0000] [1] [INFO] Starting gunicorn 19.7.1
> [2018-03-19 14:50:59 +0000] [1] [INFO] Listening at: http://0.0.0.0:8080 (1)
> [2018-03-19 14:50:59 +0000] [1] [INFO] Using worker: threads
> [2018-03-19 14:50:59 +0000] [14] [INFO] Booting worker with pid: 14
> [2018-03-19 14:50:59 +0000] [14] [ERROR] Exception in worker process
> Traceback (most recent call last):
>   File "/usr/local/lib/python3.6/site-packages/gunicorn/arbiter.py", line
> 578, in spawn_worker
>     worker.init_process()
>   File "/usr/local/lib/python3.6/site-packages/gunicorn/workers/gthread.py",
> line 109, in init_process
>     super(ThreadWorker, self).init_process()
>   File "/usr/local/lib/python3.6/site-packages/gunicorn/workers/base.py",
> line 126, in init_process
>     self.load_wsgi()
>   File "/usr/local/lib/python3.6/site-packages/gunicorn/workers/base.py",
> line 135, in load_wsgi
>     self.wsgi = self.app.wsgi()
>   File "/usr/local/lib/python3.6/site-packages/gunicorn/app/base.py", line
> 67, in wsgi
>     self.callable = self.load()
>   File "/usr/local/lib/python3.6/site-packages/gunicorn/app/wsgiapp.py",
> line 65, in load
>     return self.load_wsgiapp()
>   File "/usr/local/lib/python3.6/site-packages/gunicorn/app/wsgiapp.py",
> line 52, in load_wsgiapp
>     return util.import_app(self.app_uri)
>   File "/usr/local/lib/python3.6/site-packages/gunicorn/util.py", line 352,
> in import_app
>     __import__(module)
>   File "/pgadmin4/run_pgadmin.py", line 4, in <module>
>     from pgAdmin4 import app
>   File "/pgadmin4/pgAdmin4.py", line 67, in <module>
>     app = create_app()
>   File "/pgadmin4/pgadmin/__init__.py", line 309, in create_app
>     schema_version = version.value
> AttributeError: 'NoneType' object has no attribute 'value'
> [2018-03-19 14:50:59 +0000] [14] [INFO] Worker exiting (pid: 14)
> [2018-03-19 14:50:59 +0000] [1] [INFO] Shutting down: Master
> [2018-03-19 14:50:59 +0000] [1] [INFO] Reason: Worker failed to boot.

Yeah, that was shell quoting issue, should be fixed.

:-)

 
--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

pgadmin-hackers by date:

Previous
From: Robert Eckhardt
Date:
Subject: Re: [pgadmin4][patch] #3244 Query elapse time granularity
Next
From: Khushboo Vashi
Date:
Subject: Re: [pgAdmin4][Patch]: RM #1978 - Add an option to allow user todisable alertifyjs and acitree animations