GeoNode / geonode

GeoNode is an open source platform that facilitates the creation, sharing, and collaborative use of geospatial data.
https://geonode.org/
Other
1.44k stars 1.12k forks source link

Geonode django container in a restarting loop #5026

Closed sindile closed 4 years ago

sindile commented 4 years ago

Expected Behavior

I was expecting to access geonode at http://localhost

Actual Behavior

django container is in a restarting loop http://localhost cannot be accessed (geonode) http://localhost/geoserver IS_CELERY=false DATABASE_URL=postgres://geonode:geonode@db:5432/geonode GEODATABASE_URL=postgis://geonode_data:geonode_data@db:5432/geonode_data SITEURL=http://localhost:80/ ALLOWED_HOSTS=['localhost', 'localhost', 'localhost:80', 'django', 'geonode'] GEOSERVER_PUBLIC_LOCATION=http://localhost:80/geoserver/ GEOSERVER_WEB_UI_LOCATION=http://localhost:80/geoserver/ waitfordbs task done migrations task done DOCKER_ENV=production **init file**** initialized refresh static data **migrations*** Traceback (most recent call last): File "manage.py", line 29, in execute_from_command_line(sys.argv) File "/usr/local/lib/python2.7/site-packages/django/core/management/init.py", line 364, in execute_from_command_line utility.execute() File "/usr/local/lib/python2.7/site-packages/django/core/management/init.py", line 338, in execute django.setup() File "/usr/local/lib/python2.7/site-packages/django/init.py", line 27, in setup apps.populate(settings.INSTALLED_APPS) File "/usr/local/lib/python2.7/site-packages/django/apps/registry.py", line 116, in populate app_config.ready() File "/usr/local/lib/python2.7/site-packages/django/contrib/admin/apps.py", line 23, in ready self.module.autodiscover() File "/usr/local/lib/python2.7/site-packages/django/contrib/admin/init.py", line 26, in autodiscover autodiscover_modules('admin', register_to=site) File "/usr/local/lib/python2.7/site-packages/django/utils/module_loading.py", line 50, in autodiscover_modules import_module('%s.%s' % (app_config.name, module_to_search)) File "/usr/local/lib/python2.7/importlib/init.py", line 37, in import_module import(name) File "/usr/src/app/geonode/people/admin.py", line 41, in from .forms import ProfileCreationForm, ProfileChangeForm File "/usr/src/app/geonode/people/forms.py", line 30, in from captcha.fields import ReCaptchaField ImportError: No module named captcha.fields

Steps to Reproduce the Problem

  1. docker-compose -f docker-compose.yml -f docker-compose.override.localhost.yml up -d
  2. docker logs -f django4geonode

Specifications

gannebamm commented 4 years ago

I am unable to reproduce your error @sindile but am not able to start the default docker stack, too. My error is different though:

For some reason the nginx does not connect properly to django and/or the django container is set in a restart loop.

@francbartoli Could you take a look on the default docker setup?

gannebamm commented 4 years ago

@sindile While we figure out whats wrong:

Could you please try to use the SPC docker setup instead? See http://docs.geonode.org/en/2.10.x/install/spc/index.html

sindile commented 4 years ago

@sindile While we figure out whats wrong:

Could you please try to use the SPC docker setup instead? See http://docs.geonode.org/en/2.10.x/install/spc/index.html

I am able to run SPC docker setup.

gannebamm commented 4 years ago

We currently discuss to overhaul the docker setup. Since this Issue can be mitigated, I will label it as minor.

yoursnack commented 4 years ago

I'm having the exact same problem with a new installation! though after using the --build flag, it started normally.

pjduplooy1 commented 4 years ago

I am also experiencing the same problem. This is for native Windows Docker. SPC also does not work

pjduplooy1 commented 4 years ago

I may have stumbled on a workaround.

When I used git clone https://github.com/GeoNode/geonode.git geonode --config core.autocrlf=input --depth 1, the django container does not go into a restart loop. I will check this with SPC.

This is on Windows 10 with Docker for Windows (not Docker Toolbox), so I do not know if this works for Linux or not.

gannebamm commented 4 years ago

@pjduplooy1 this is the major issue with working on windows. You should check all files for proper unix line endings. Sometimes a shell script or stuff is wrong formatted which results in the container not finding it in the containers Unix filesystem.

That behaviour is stated in the spc readme btw at the very end of the document

cwillmes commented 4 years ago

I am on ubuntu 18.04 server, and facing the same "django" issue "ImportError: No module named captcha.fields". Geoserver is running, accessing geonode frontend gives "internal server error".

Also '''pip install captcha''' did not help.

gannebamm commented 4 years ago

@cwillmes could you please build the image locally? docker-compose build

Otherwise please use the spc setup for now and build it according to the readme in scripts/spcgeonode

cwillmes commented 4 years ago

I am sorry. Using docker for the first time, was used to install geonode via apt before. What is SPC? What does SPC stand for? A link to "spc setup" would help. Thanks.

frafra commented 4 years ago

@cwillmes https://github.com/GeoNode/geonode/tree/master/scripts/spcgeonode

stale[bot] commented 4 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.