Kobo installation does not come out of the waiting stage

I recently installed Kobo on Ubuntu 18. The installation went fine. However, after all the containers are started, kobo remains in the waiting stage. It does not finish up and give a green message with the username and password. I checked the containers as well, all the containers are running fine. What else can be the issue?

Hey! I have the same problem. Did you solve it?

No. I haven’t been able to resolve this issue.

Hello @Louai.haddad @hamza0342 what do you get when you run

sudo python3 run.py --logs

1 Like

kobofe-kpi-1 | KPI initializing…
kobofe-kpi-1 | Waiting for container mongo.
kobofe-kpi-1 | wait-for-it: waiting 40 seconds for mongo.bicc-elephant.private:27017
kobofe-kpi-1 | wait-for-it: mongo.bicc-elephant.private:27017 is available after 0 seconds
kobofe-kpi-1 | Container mongo up.
kobofe-kpi-1 | Waiting for container postgres.
kobofe-kpi-1 | wait-for-it: waiting 20 seconds for postgres.bicc-elephant.private:5432
kobofe-kpi-1 | wait-for-it: postgres.bicc-elephant.private:5432 is available after 0 seconds
kobofe-kpi-1 | Container postgres up.
kobofe-enketo_express-1 | 2023-05-22T09:44:20: PM2 log: Launching in no daemon mode
kobofe-enketo_express-1 | 2023-05-22T09:44:20: PM2 log: App [enketo:0] starting in -fork mode-
kobofe-enketo_express-1 | 2023-05-22T09:44:20: PM2 log: App [enketo:0] online
kobofe-enketo_express-1 | Worker 4 ready for duty at port 8005! (environment: production)
kobofe-enketo_express-1 | Worker 1 ready for duty at port 8005! (environment: production)
kobofe-enketo_express-1 | Worker 2 ready for duty at port 8005! (environment: production)
kobofe-enketo_express-1 | Worker 3 ready for duty at port 8005! (environment: production)
kobofe-kpi-1 | Waiting for Postgres service.
kobofe-kpi-1 | postgres.bicc-elephant.private:5432 - accepting connections
kobofe-kpi-1 | Postgres service running; ensuring koboform database exists and has PostGIS extensions…
kobofe-kpi-1 | ERROR: database “koboform” already exists
kobofe-kpi-1 | You are now connected to database “koboform” as user “kobo”.
kobofe-kpi-1 | NOTICE: extension “postgis” already exists, skipping
kobofe-kpi-1 | CREATE EXTENSION
kobofe-kpi-1 | CREATE EXTENSION
kobofe-kpi-1 | NOTICE: extension “postgis_topology” already exists, skipping
kobofe-kpi-1 | CREATE EXTENSION
kobofe-kpi-1 | NOTICE: extension “fuzzystrmatch” already exists, skipping
kobofe-nginx-1 | /docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
kobofe-nginx-1 | /docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
kobofe-nginx-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
kobofe-nginx-1 | 10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf
kobofe-nginx-1 | 10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf
kobofe-nginx-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
kobofe-nginx-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/30-init-kobo-nginx.sh
kobofe-nginx-1 | Creating includes directory
kobofe-kpi-1 | CREATE EXTENSION
kobofe-nginx-1 | Overwriting default nginx configuration
kobofe-kpi-1 | NOTICE: extension “postgis_tiger_geocoder” already exists, skipping
kobofe-kpi-1 | Postgres database koboform ready for use!
kobofe-nginx-1 | Clearing out any default configurations
kobofe-nginx-1 | Proxying to kobocat through uWSGI.
kobofe-nginx-1 | Proxying to kpi through uWSGI.
kobofe-nginx-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh
kobofe-nginx-1 | /docker-entrypoint.sh: Configuration complete; ready for start up
kobofe-kpi-1 | Running migrations…
kobofe-kpi-1 | Operations to perform:
kobofe-kpi-1 | Apply all migrations: account, accounts, admin, audit_log, auth, authtoken, contenttypes, database, django_celery_beat, django_digest, external_integrations, help, hook, hub, kpi, languages, mfa, oauth2_provider, organizations, project_views, reversion, sessions, socialaccount, subsequences, taggit, trackers, trash_bin, trench
kobofe-kpi-1 | Running migrations:
kobofe-kpi-1 | No migrations to apply.
kobofe-kpi-1 | Creating superuser…
kobofe-kpi-1 | User already exists.
kobofe-kpi-1 | Copying static files to nginx volume…
kobofe-kpi-1 | Cleaning up Celery PIDs…
kobofe-kpi-1 | Restore permissions on Celery logs folder
kobofe-kpi-1 | KPI initialization completed.
kobofe-kpi-1 | Running kpi container with uWSGI application server.
kobofe-kpi-1 | [uWSGI] getting INI configuration from /srv/src/kpi/docker/uwsgi.ini
kobofe-kpi-1 |
kobofe-kpi-1 | -------------- kpi_main_worker@kpi v5.2.6 (dawn-chorus)
kobofe-kpi-1 | — ***** -----
kobofe-kpi-1 | – ******* ---- Linux-5.15.0-72-generic-x86_64-with-glibc2.31 2023-05-22 09:44:28
kobofe-kpi-1 | - *** — * —
kobofe-kpi-1 | - ** ---------- [config]
kobofe-kpi-1 | - ** ---------- .> app: kobo:0x7f0ed184b4c0
kobofe-kpi-1 | - ** ---------- .> transport: redis://:@redis-main.bicc-elephant.private:6379/1
kobofe-kpi-1 | - ** ---------- .> results: redis://:
@redis-main.bicc-elephant.private:6379/1
kobofe-kpi-1 | - *** — * — .> concurrency: {min=2, max=2} (prefork)
kobofe-kpi-1 | – ******* ---- .> task events: OFF (enable -E to monitor tasks in this worker)
kobofe-kpi-1 | — ***** -----
kobofe-kpi-1 | -------------- [queues]
kobofe-kpi-1 | .> kpi_low_priority_queue exchange=kpi_low_priority_queue(direct) key=kpi_low_priority_queue
kobofe-kobocat-1 | KoBoCAT intializing…
kobofe-kobocat-1 | Waiting for container mongo.
kobofe-kobocat-1 | wait-for-it: waiting 40 seconds for mongo.bicc-elephant.private:27017
kobofe-kobocat-1 | wait-for-it: mongo.bicc-elephant.private:27017 is available after 0 seconds
kobofe-kobocat-1 | Container mongo up.
kobofe-kobocat-1 | Waiting for container postgres.
kobofe-kobocat-1 | wait-for-it: waiting 20 seconds for postgres.bicc-elephant.private:5432
kobofe-kobocat-1 | wait-for-it: postgres.bicc-elephant.private:5432 is available after 0 seconds
kobofe-kobocat-1 | Container postgres up.
kobofe-kobocat-1 | Waiting for Postgres service.
kobofe-kobocat-1 | postgres.bicc-elephant.private:5432 - accepting connections
kobofe-kobocat-1 | Postgres service running; ensuring kobocat database exists and has PostGIS extensions…
kobofe-kobocat-1 | ERROR: database “kobocat” already exists
kobofe-kobocat-1 | You are now connected to database “kobocat” as user “kobo”.
kobofe-kobocat-1 | NOTICE: extension “postgis” already exists, skipping
kobofe-kobocat-1 | CREATE EXTENSION
kobofe-kobocat-1 | NOTICE: extension “postgis_topology” already exists, skipping
kobofe-kobocat-1 | CREATE EXTENSION
kobofe-kobocat-1 | NOTICE: extension “fuzzystrmatch” already exists, skipping
kobofe-kobocat-1 | CREATE EXTENSION
kobofe-kobocat-1 | NOTICE: extension “postgis_tiger_geocoder” already exists, skipping
kobofe-kobocat-1 | CREATE EXTENSION
kobofe-kobocat-1 | Postgres database kobocat ready for use!
kobofe-kobocat-1 | Running migrations…
kobofe-kobocat-1 | Your environment is:“onadata.settings.prod”
kobofe-kobocat-1 |
kobofe-kobocat-1 | This migration might take a while. If it is too slow, you may want to
kobofe-kobocat-1 | re-run migrations with SKIP_HEAVY_MIGRATIONS=True and apply this one
kobofe-kobocat-1 | manually from the django shell.
kobofe-kobocat-1 |
kobofe-kobocat-1 | Operations to perform:
kobofe-kobocat-1 | Apply all migrations: admin, api, auth, authtoken, contenttypes, django_celery_beat, django_digest, guardian, logger, main, oauth2_provider, restservice, reversion, sessions, sites, taggit, viewer
kobofe-kobocat-1 | Running migrations:
kobofe-kobocat-1 | No migrations to apply.
kobofe-kobocat-1 | Setting up cron tasks…
kobofe-kobocat-1 | KoBoCAT tmp clean-up cron installed
kobofe-kobocat-1 | KoBoCAT media automatic backup schedule: 0 0 * * 0
kobofe-kobocat-1 | Collecting static files…
kobofe-kobocat-1 | Your environment is:“onadata.settings.prod”
kobofe-kobocat-1 | Done
kobofe-kobocat-1 | Resetting ownership of media directory…
kobofe-kobocat-1 | Done.
kobofe-kpi-1 |
kobofe-kpi-1 |
kobofe-kobocat-1 | %%%%%%% NOTICE %%%%%%%
kobofe-kobocat-1 | % To avoid long delays, we no longer reset ownership recursively
kobofe-kobocat-1 | % every time this container starts. If you have trouble with
kobofe-kobocat-1 | % permissions, please run the following command inside the
kobofe-kobocat-1 | % KoBoCAT container:
kobofe-kobocat-1 | % chown -R “kobo” “/srv/src/kobocat”
kobofe-kobocat-1 | %%%%%%%%%%%%%%%%%%%%%%
kobofe-kobocat-1 | Syncing to nginx folder…
kobofe-kobocat-1 | Done
kobofe-kobocat-1 | Cleaning up Celery PIDs…
kobofe-kobocat-1 | KoBoCAT initialization complete.
kobofe-kobocat-1 | *** Starting uWSGI 2.0.21 (64bit) on [Mon May 22 09:44:24 2023] ***
kobofe-kobocat-1 | compiled with version: 10.2.1 20210110 on 10 May 2023 16:29:32
kobofe-kobocat-1 | os: Linux-5.15.0-72-generic #79-Ubuntu SMP Wed Apr 19 08:22:18 UTC 2023
kobofe-kobocat-1 | nodename: kobocat
kobofe-kobocat-1 | machine: x86_64
kobofe-kobocat-1 | clock source: unix
kobofe-kobocat-1 | pcre jit disabled
kobofe-kobocat-1 | detected number of CPU cores: 4
kobofe-kobocat-1 | current working directory: /etc/service/uwsgi_wrong_port_warning
kobofe-kpi-1 | [tasks]
kobofe-kpi-1 | . kobo.apps.hook.tasks.failures_reports
kobofe-kpi-1 | . kobo.apps.hook.tasks.retry_all_task
kobofe-kpi-1 | . kobo.apps.hook.tasks.service_definition_task
kobofe-kobocat-1 | detected binary path: /opt/venv/bin/uwsgi
kobofe-kpi-1 | . kobo.apps.subsequences.tasks.handle_translation_operation.handle_google_translation_operation
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_continued_usage_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_country_report
kobofe-kobocat-1 | setgid() to 1000
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_domain_report
kobofe-kobocat-1 | setuid() to 1000
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_forms_count_by_submission_range
kobofe-kobocat-1 | *** WARNING: you are running uWSGI without its master process manager ***
kobofe-kobocat-1 | your memory page size is 4096 bytes
kobofe-kobocat-1 | detected max file descriptor number: 1048576
kobofe-kobocat-1 | lock engine: pthread robust mutexes
kobofe-kobocat-1 | thunder lock: disabled (you can enable it with --thunder-lock)
kobofe-kobocat-1 | uwsgi socket 0 bound to TCP address :8000 fd 3
kobofe-kobocat-1 | Python version: 3.10.9 (main, Jan 23 2023, 22:43:18) [GCC 10.2.1 20210110]
kobofe-kobocat-1 | Running KoBoCAT container with uWSGI application server.
kobofe-kobocat-1 | [uWSGI] getting INI configuration from /srv/src/kobocat/docker/uwsgi.ini
kobofe-kobocat-1 | *** Python threads support is disabled. You can enable it with --enable-threads ***
kobofe-kobocat-1 | Python main interpreter initialized at 0x556918a70b90
kobofe-kobocat-1 | your server socket listen backlog is limited to 100 connections
kobofe-kobocat-1 | your mercy for graceful operations on workers is 60 seconds
kobofe-kobocat-1 | mapped 72920 bytes (71 KB) for 1 cores
kobofe-kobocat-1 | *** Operational MODE: single process ***
kobofe-kobocat-1 | WSGI app 0 (mountpoint=‘’) ready in 0 seconds on interpreter 0x556918a70b90 pid: 89 (default app)
kobofe-kobocat-1 | *** uWSGI is running in multiple interpreter mode ***
kobofe-kobocat-1 | spawned uWSGI worker 1 (and the only) (pid: 89, cores: 1)
kobofe-kobocat-1 |
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_media_storage_report
kobofe-kobocat-1 | -------------- kobocat_main_worker@kobocat v5.2.6 (dawn-chorus)
kobofe-kobocat-1 | — ***** -----
kobofe-kobocat-1 | – ******* ---- Linux-5.15.0-72-generic-x86_64-with-glibc2.31 2023-05-22 09:44:26
kobofe-kobocat-1 | - *** — * —
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_user_count_by_organization
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_user_details_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_user_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_user_statistics_report
kobofe-kpi-1 | . kobo.apps.trash_bin.tasks.empty_account
kobofe-kpi-1 | . kobo.apps.trash_bin.tasks.empty_project
kobofe-kpi-1 | . kobo.apps.trash_bin.tasks.garbage_collector
kobofe-kpi-1 | . kobo.celery.debug_task
kobofe-kpi-1 | . kpi.tasks.enketo_flush_cached_preview
kobofe-kpi-1 | . kpi.tasks.export_in_background
kobofe-kpi-1 | . kpi.tasks.import_in_background
kobofe-kpi-1 | . kpi.tasks.project_view_export_in_background
kobofe-kpi-1 | . kpi.tasks.remove_asset_snapshots
kobofe-kpi-1 | . kpi.tasks.sync_kobocat_xforms
kobofe-kpi-1 | . kpi.tasks.sync_media_files
kobofe-kpi-1 |
kobofe-kpi-1 |
kobofe-kpi-1 | -------------- kpi_main_worker@kpi v5.2.6 (dawn-chorus)
kobofe-kpi-1 | — ***** -----
kobofe-kpi-1 | – ******* ---- Linux-5.15.0-72-generic-x86_64-with-glibc2.31 2023-05-22 09:44:28
kobofe-kpi-1 | - *** — * —
kobofe-kpi-1 | - ** ---------- [config]
kobofe-kpi-1 | - ** ---------- .> app: kobo:0x7fbe5ec036d0
kobofe-kpi-1 | - ** ---------- .> transport: redis://:@redis-main.bicc-elephant.private:6379/1
kobofe-kpi-1 | - ** ---------- .> results: redis://:
@redis-main.bicc-elephant.private:6379/1
kobofe-kpi-1 | - *** — * — .> concurrency: {min=2, max=6} (prefork)
kobofe-kpi-1 | – ******* ---- .> task events: OFF (enable -E to monitor tasks in this worker)
kobofe-kpi-1 | — ***** -----
kobofe-kpi-1 | -------------- [queues]
kobofe-kpi-1 | .> kpi_queue exchange=kpi_queue(direct) key=kpi_queue
kobofe-kpi-1 |
kobofe-kpi-1 |
kobofe-kpi-1 | [tasks]
kobofe-kpi-1 | . kobo.apps.hook.tasks.failures_reports
kobofe-kpi-1 | . kobo.apps.hook.tasks.retry_all_task
kobofe-kpi-1 | . kobo.apps.hook.tasks.service_definition_task
kobofe-kobocat-1 | - ** ---------- [config]
kobofe-kobocat-1 | - ** ---------- .> app: onadata:0x7f21894b98d0
kobofe-kobocat-1 | - ** ---------- .> transport: redis://:@redis-main.bicc-elephant.private:6379/2
kobofe-kobocat-1 | - ** ---------- .> results: redis://:
@redis-main.bicc-elephant.private:6379/2
kobofe-kobocat-1 | - *** — * — .> concurrency: 4 (prefork)
kobofe-kobocat-1 | – ******* ---- .> task events: OFF (enable -E to monitor tasks in this worker)
kobofe-kobocat-1 | — ***** -----
kobofe-kpi-1 | . kobo.apps.subsequences.tasks.handle_translation_operation.handle_google_translation_operation
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_continued_usage_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_country_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_domain_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_forms_count_by_submission_range
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_media_storage_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_user_count_by_organization
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_user_details_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_user_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_user_statistics_report
kobofe-kpi-1 | . kobo.apps.trash_bin.tasks.empty_account
kobofe-kpi-1 | . kobo.apps.trash_bin.tasks.empty_project
kobofe-kpi-1 | . kobo.apps.trash_bin.tasks.garbage_collector
kobofe-kpi-1 | . kobo.celery.debug_task
kobofe-kpi-1 | . kpi.tasks.enketo_flush_cached_preview
kobofe-kpi-1 | . kpi.tasks.export_in_background
kobofe-kpi-1 | . kpi.tasks.import_in_background
kobofe-kpi-1 | . kpi.tasks.project_view_export_in_background
kobofe-kpi-1 | . kpi.tasks.remove_asset_snapshots
kobofe-kpi-1 | . kpi.tasks.sync_kobocat_xforms
kobofe-kpi-1 | . kpi.tasks.sync_media_files
kobofe-kpi-1 |
kobofe-kobocat-1 | -------------- [queues]
kobofe-kobocat-1 | .> kobocat_queue exchange=kobocat_queue(direct) key=kobocat_queue
kobofe-kobocat-1 |
kobofe-kobocat-1 |
kobofe-kobocat-1 | [tasks]
kobofe-kobocat-1 | . onadata.apps.logger.tasks.delete_daily_counters
kobofe-kobocat-1 | . onadata.apps.logger.tasks.fix_root_node_names
kobofe-kobocat-1 | . onadata.apps.logger.tasks.generate_stats_zip
kobofe-kobocat-1 | . onadata.apps.restservice.tasks.service_definition_task
kobofe-kobocat-1 | . onadata.apps.viewer.models.parsed_instance.update_mongo_instance
kobofe-kobocat-1 | . onadata.apps.viewer.tasks.create_csv_export
kobofe-kobocat-1 | . onadata.apps.viewer.tasks.create_kml_export
kobofe-kobocat-1 | . onadata.apps.viewer.tasks.create_xls_export
kobofe-kobocat-1 | . onadata.apps.viewer.tasks.create_zip_export
kobofe-kobocat-1 | . onadata.apps.viewer.tasks.delete_export
kobofe-kobocat-1 | . onadata.apps.viewer.tasks.email_mongo_sync_status
kobofe-kobocat-1 | . onadata.apps.viewer.tasks.log_stuck_exports_and_mark_failed
kobofe-kobocat-1 | . onadata.celery.debug_task
kobofe-kobocat-1 |

This is what I got from printing the error in the status_check function in the /kobo-install/helpers/network.py:
ERROR [Errno 111] Connection refused

kobofe-nginx-1 | /docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
kobofe-nginx-1 | /docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
kobofe-nginx-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
kobofe-nginx-1 | 10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf
kobofe-nginx-1 | 10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf
kobofe-nginx-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
kobofe-nginx-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/30-init-kobo-nginx.sh
kobofe-nginx-1 | Creating includes directory
kobofe-nginx-1 | Overwriting default nginx configuration
kobofe-nginx-1 | Clearing out any default configurations
kobofe-nginx-1 | Proxying to kobocat through uWSGI.
kobofe-nginx-1 | Proxying to kpi through uWSGI.
kobofe-nginx-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh
kobofe-nginx-1 | /docker-entrypoint.sh: Configuration complete; ready for start up
kobofe-kobocat-1 | KoBoCAT intializing…
kobofe-kobocat-1 | Waiting for container mongo.
kobofe-kobocat-1 | wait-for-it: waiting 40 seconds for mongo.bicc-elephant.private:27017
kobofe-kobocat-1 | wait-for-it: mongo.bicc-elephant.private:27017 is available after 0 seconds
kobofe-kobocat-1 | Container mongo up.
kobofe-kobocat-1 | Waiting for container postgres.
kobofe-kobocat-1 | wait-for-it: waiting 20 seconds for postgres.bicc-elephant.private:5432
kobofe-kobocat-1 | wait-for-it: postgres.bicc-elephant.private:5432 is available after 0 seconds
kobofe-kobocat-1 | Container postgres up.
kobofe-kobocat-1 | Waiting for Postgres service.
kobofe-kobocat-1 | postgres.bicc-elephant.private:5432 - accepting connections
kobofe-kobocat-1 | Postgres service running; ensuring kobocat database exists and has PostGIS extensions…
kobofe-kobocat-1 | ERROR: database “kobocat” already exists
kobofe-kobocat-1 | You are now connected to database “kobocat” as user “kobo”.
kobofe-kobocat-1 | NOTICE: extension “postgis” already exists, skipping
kobofe-kobocat-1 | CREATE EXTENSION
kobofe-kobocat-1 | NOTICE: extension “postgis_topology” already exists, skipping
kobofe-kobocat-1 | CREATE EXTENSION
kobofe-kobocat-1 | NOTICE: extension “fuzzystrmatch” already exists, skipping
kobofe-kobocat-1 | CREATE EXTENSION
kobofe-kobocat-1 | NOTICE: extension “postgis_tiger_geocoder” already exists, skipping
kobofe-kobocat-1 | CREATE EXTENSION
kobofe-kobocat-1 | Postgres database kobocat ready for use!
kobofe-kobocat-1 | Running migrations…
kobofe-kobocat-1 | Your environment is:“onadata.settings.prod”
kobofe-kobocat-1 |
kobofe-kobocat-1 | This migration might take a while. If it is too slow, you may want to
kobofe-kobocat-1 | re-run migrations with SKIP_HEAVY_MIGRATIONS=True and apply this one
kobofe-kobocat-1 | manually from the django shell.
kobofe-kobocat-1 |
kobofe-kobocat-1 | Operations to perform:
kobofe-kobocat-1 | Apply all migrations: admin, api, auth, authtoken, contenttypes, django_celery_beat, django_digest, guardian, logger, main, oauth2_provider, restservice, reversion, sessions, sites, taggit, viewer
kobofe-kobocat-1 | Running migrations:
kobofe-kobocat-1 | No migrations to apply.
kobofe-kobocat-1 | Setting up cron tasks…
kobofe-kobocat-1 | KoBoCAT tmp clean-up cron installed
kobofe-kobocat-1 | KoBoCAT media automatic backup schedule: 0 0 * * 0
kobofe-kobocat-1 | Collecting static files…
kobofe-kobocat-1 | Your environment is:“onadata.settings.prod”
kobofe-kobocat-1 | Done
kobofe-kobocat-1 | Resetting ownership of media directory…
kobofe-kobocat-1 | Done.
kobofe-kobocat-1 | %%%%%%% NOTICE %%%%%%%
kobofe-kobocat-1 | % To avoid long delays, we no longer reset ownership recursively
kobofe-kobocat-1 | % every time this container starts. If you have trouble with
kobofe-kobocat-1 | % permissions, please run the following command inside the
kobofe-kobocat-1 | % KoBoCAT container:
kobofe-kobocat-1 | % chown -R “kobo” “/srv/src/kobocat”
kobofe-kobocat-1 | %%%%%%%%%%%%%%%%%%%%%%
kobofe-kobocat-1 | Syncing to nginx folder…
kobofe-kobocat-1 | Done
kobofe-kobocat-1 | Cleaning up Celery PIDs…
kobofe-kobocat-1 | KoBoCAT initialization complete.
kobofe-kobocat-1 | *** Starting uWSGI 2.0.21 (64bit) on [Mon May 22 09:44:24 2023] ***
kobofe-kobocat-1 | compiled with version: 10.2.1 20210110 on 10 May 2023 16:29:32
kobofe-kobocat-1 | os: Linux-5.15.0-72-generic #79-Ubuntu SMP Wed Apr 19 08:22:18 UTC 2023
kobofe-kobocat-1 | nodename: kobocat
kobofe-kobocat-1 | machine: x86_64
kobofe-kobocat-1 | clock source: unix
kobofe-kobocat-1 | pcre jit disabled
kobofe-kobocat-1 | detected number of CPU cores: 4
kobofe-kobocat-1 | current working directory: /etc/service/uwsgi_wrong_port_warning
kobofe-kobocat-1 | detected binary path: /opt/venv/bin/uwsgi
kobofe-kobocat-1 | setgid() to 1000
kobofe-kobocat-1 | setuid() to 1000
kobofe-kobocat-1 | *** WARNING: you are running uWSGI without its master process manager ***
kobofe-kobocat-1 | your memory page size is 4096 bytes
kobofe-kpi-1 | KPI initializing…
kobofe-kpi-1 | Waiting for container mongo.
kobofe-kpi-1 | wait-for-it: waiting 40 seconds for mongo.bicc-elephant.private:27017
kobofe-kpi-1 | wait-for-it: mongo.bicc-elephant.private:27017 is available after 0 seconds
kobofe-kpi-1 | Container mongo up.
kobofe-kpi-1 | Waiting for container postgres.
kobofe-kpi-1 | wait-for-it: waiting 20 seconds for postgres.bicc-elephant.private:5432
kobofe-kpi-1 | wait-for-it: postgres.bicc-elephant.private:5432 is available after 0 seconds
kobofe-kpi-1 | Container postgres up.
kobofe-kpi-1 | Waiting for Postgres service.
kobofe-kpi-1 | postgres.bicc-elephant.private:5432 - accepting connections
kobofe-kpi-1 | Postgres service running; ensuring koboform database exists and has PostGIS extensions…
kobofe-kpi-1 | ERROR: database “koboform” already exists
kobofe-kpi-1 | You are now connected to database “koboform” as user “kobo”.
kobofe-kpi-1 | NOTICE: extension “postgis” already exists, skipping
kobofe-kpi-1 | CREATE EXTENSION
kobofe-kpi-1 | CREATE EXTENSION
kobofe-kpi-1 | NOTICE: extension “postgis_topology” already exists, skipping
kobofe-kpi-1 | CREATE EXTENSION
kobofe-kpi-1 | NOTICE: extension “fuzzystrmatch” already exists, skipping
kobofe-kpi-1 | CREATE EXTENSION
kobofe-kpi-1 | NOTICE: extension “postgis_tiger_geocoder” already exists, skipping
kobofe-kpi-1 | Postgres database koboform ready for use!
kobofe-kpi-1 | Running migrations…
kobofe-kpi-1 | Operations to perform:
kobofe-kpi-1 | Apply all migrations: account, accounts, admin, audit_log, auth, authtoken, contenttypes, database, django_celery_beat, django_digest, external_integrations, help, hook, hub, kpi, languages, mfa, oauth2_provider, organizations, project_views, reversion, sessions, socialaccount, subsequences, taggit, trackers, trash_bin, trench
kobofe-kpi-1 | Running migrations:
kobofe-kpi-1 | No migrations to apply.
kobofe-kpi-1 | Creating superuser…
kobofe-kpi-1 | User already exists.
kobofe-kpi-1 | Copying static files to nginx volume…
kobofe-kpi-1 | Cleaning up Celery PIDs…
kobofe-kpi-1 | Restore permissions on Celery logs folder
kobofe-kpi-1 | KPI initialization completed.
kobofe-kpi-1 | Running kpi container with uWSGI application server.
kobofe-kpi-1 | [uWSGI] getting INI configuration from /srv/src/kpi/docker/uwsgi.ini
kobofe-kpi-1 |
kobofe-kpi-1 | -------------- kpi_main_worker@kpi v5.2.6 (dawn-chorus)
kobofe-kpi-1 | — ***** -----
kobofe-kpi-1 | – ******* ---- Linux-5.15.0-72-generic-x86_64-with-glibc2.31 2023-05-22 09:44:28
kobofe-kpi-1 | - *** — * —
kobofe-kpi-1 | - ** ---------- [config]
kobofe-kpi-1 | - ** ---------- .> app: kobo:0x7f0ed184b4c0
kobofe-kpi-1 | - ** ---------- .> transport: redis://:@redis-main.bicc-elephant.private:6379/1
kobofe-kpi-1 | - ** ---------- .> results: redis://:
@redis-main.bicc-elephant.private:6379/1
kobofe-kpi-1 | - *** — * — .> concurrency: {min=2, max=2} (prefork)
kobofe-kpi-1 | – ******* ---- .> task events: OFF (enable -E to monitor tasks in this worker)
kobofe-kpi-1 | — ***** -----
kobofe-kpi-1 | -------------- [queues]
kobofe-kpi-1 | .> kpi_low_priority_queue exchange=kpi_low_priority_queue(direct) key=kpi_low_priority_queue
kobofe-kpi-1 |
kobofe-kpi-1 |
kobofe-kpi-1 | [tasks]
kobofe-kpi-1 | . kobo.apps.hook.tasks.failures_reports
kobofe-kpi-1 | . kobo.apps.hook.tasks.retry_all_task
kobofe-kpi-1 | . kobo.apps.hook.tasks.service_definition_task
kobofe-kpi-1 | . kobo.apps.subsequences.tasks.handle_translation_operation.handle_google_translation_operation
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_continued_usage_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_country_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_domain_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_forms_count_by_submission_range
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_media_storage_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_user_count_by_organization
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_user_details_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_user_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_user_statistics_report
kobofe-kpi-1 | . kobo.apps.trash_bin.tasks.empty_account
kobofe-kpi-1 | . kobo.apps.trash_bin.tasks.empty_project
kobofe-kpi-1 | . kobo.apps.trash_bin.tasks.garbage_collector
kobofe-kpi-1 | . kobo.celery.debug_task
kobofe-kpi-1 | . kpi.tasks.enketo_flush_cached_preview
kobofe-kpi-1 | . kpi.tasks.export_in_background
kobofe-kpi-1 | . kpi.tasks.import_in_background
kobofe-kpi-1 | . kpi.tasks.project_view_export_in_background
kobofe-kpi-1 | . kpi.tasks.remove_asset_snapshots
kobofe-kpi-1 | . kpi.tasks.sync_kobocat_xforms
kobofe-kpi-1 | . kpi.tasks.sync_media_files
kobofe-kpi-1 |
kobofe-kpi-1 |
kobofe-kpi-1 | -------------- kpi_main_worker@kpi v5.2.6 (dawn-chorus)
kobofe-kpi-1 | — ***** -----
kobofe-kpi-1 | – ******* ---- Linux-5.15.0-72-generic-x86_64-with-glibc2.31 2023-05-22 09:44:28
kobofe-kpi-1 | - *** — * —
kobofe-kpi-1 | - ** ---------- [config]
kobofe-kpi-1 | - ** ---------- .> app: kobo:0x7fbe5ec036d0
kobofe-kpi-1 | - ** ---------- .> transport: redis://:@redis-main.bicc-elephant.private:6379/1
kobofe-kpi-1 | - ** ---------- .> results: redis://:
@redis-main.bicc-elephant.private:6379/1
kobofe-kpi-1 | - *** — * — .> concurrency: {min=2, max=6} (prefork)
kobofe-kpi-1 | – ******* ---- .> task events: OFF (enable -E to monitor tasks in this worker)
kobofe-kpi-1 | — ***** -----
kobofe-kpi-1 | -------------- [queues]
kobofe-kpi-1 | .> kpi_queue exchange=kpi_queue(direct) key=kpi_queue
kobofe-kpi-1 |
kobofe-kpi-1 |
kobofe-kpi-1 | [tasks]
kobofe-kpi-1 | . kobo.apps.hook.tasks.failures_reports
kobofe-kpi-1 | . kobo.apps.hook.tasks.retry_all_task
kobofe-kpi-1 | . kobo.apps.hook.tasks.service_definition_task
kobofe-kpi-1 | . kobo.apps.subsequences.tasks.handle_translation_operation.handle_google_translation_operation
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_continued_usage_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_country_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_domain_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_forms_count_by_submission_range
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_media_storage_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_user_count_by_organization
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_user_details_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_user_report
kobofe-kpi-1 | . kobo.apps.superuser_stats.tasks.generate_user_statistics_report
kobofe-kpi-1 | . kobo.apps.trash_bin.tasks.empty_account
kobofe-kpi-1 | . kobo.apps.trash_bin.tasks.empty_project
kobofe-kpi-1 | . kobo.apps.trash_bin.tasks.garbage_collector
kobofe-kpi-1 | . kobo.celery.debug_task
kobofe-kpi-1 | . kpi.tasks.enketo_flush_cached_preview
kobofe-kpi-1 | . kpi.tasks.export_in_background
kobofe-kpi-1 | . kpi.tasks.import_in_background
kobofe-kpi-1 | . kpi.tasks.project_view_export_in_background
kobofe-kpi-1 | . kpi.tasks.remove_asset_snapshots
kobofe-kpi-1 | . kpi.tasks.sync_kobocat_xforms
kobofe-kpi-1 | . kpi.tasks.sync_media_files
kobofe-kpi-1 |
kobofe-kobocat-1 | detected max file descriptor number: 1048576
kobofe-kobocat-1 | lock engine: pthread robust mutexes
kobofe-kobocat-1 | thunder lock: disabled (you can enable it with --thunder-lock)
kobofe-kobocat-1 | uwsgi socket 0 bound to TCP address :8000 fd 3
kobofe-kobocat-1 | Python version: 3.10.9 (main, Jan 23 2023, 22:43:18) [GCC 10.2.1 20210110]
kobofe-kobocat-1 | Running KoBoCAT container with uWSGI application server.
kobofe-kobocat-1 | [uWSGI] getting INI configuration from /srv/src/kobocat/docker/uwsgi.ini
kobofe-kobocat-1 | *** Python threads support is disabled. You can enable it with --enable-threads ***
kobofe-kobocat-1 | Python main interpreter initialized at 0x556918a70b90
kobofe-kobocat-1 | your server socket listen backlog is limited to 100 connections
kobofe-kobocat-1 | your mercy for graceful operations on workers is 60 seconds
kobofe-kobocat-1 | mapped 72920 bytes (71 KB) for 1 cores
kobofe-kobocat-1 | *** Operational MODE: single process ***
kobofe-kobocat-1 | WSGI app 0 (mountpoint=‘’) ready in 0 seconds on interpreter 0x556918a70b90 pid: 89 (default app)
kobofe-kobocat-1 | *** uWSGI is running in multiple interpreter mode ***
kobofe-kobocat-1 | spawned uWSGI worker 1 (and the only) (pid: 89, cores: 1)
kobofe-kobocat-1 |
kobofe-kobocat-1 | -------------- kobocat_main_worker@kobocat v5.2.6 (dawn-chorus)
kobofe-kobocat-1 | — ***** -----
kobofe-kobocat-1 | – ******* ---- Linux-5.15.0-72-generic-x86_64-with-glibc2.31 2023-05-22 09:44:26
kobofe-kobocat-1 | - *** — * —
kobofe-kobocat-1 | - ** ---------- [config]
kobofe-kobocat-1 | - ** ---------- .> app: onadata:0x7f21894b98d0
kobofe-kobocat-1 | - ** ---------- .> transport: redis://:@redis-main.bicc-elephant.private:6379/2
kobofe-kobocat-1 | - ** ---------- .> results: redis://:
@redis-main.bicc-elephant.private:6379/2
kobofe-kobocat-1 | - *** — * — .> concurrency: 4 (prefork)
kobofe-kobocat-1 | – ******* ---- .> task events: OFF (enable -E to monitor tasks in this worker)
kobofe-kobocat-1 | — ***** -----
kobofe-kobocat-1 | -------------- [queues]
kobofe-kobocat-1 | .> kobocat_queue exchange=kobocat_queue(direct) key=kobocat_queue
kobofe-kobocat-1 |
kobofe-kobocat-1 |
kobofe-kobocat-1 | [tasks]
kobofe-kobocat-1 | . onadata.apps.logger.tasks.delete_daily_counters
kobofe-kobocat-1 | . onadata.apps.logger.tasks.fix_root_node_names
kobofe-kobocat-1 | . onadata.apps.logger.tasks.generate_stats_zip
kobofe-kobocat-1 | . onadata.apps.restservice.tasks.service_definition_task
kobofe-kobocat-1 | . onadata.apps.viewer.models.parsed_instance.update_mongo_instance
kobofe-kobocat-1 | . onadata.apps.viewer.tasks.create_csv_export
kobofe-kobocat-1 | . onadata.apps.viewer.tasks.create_kml_export
kobofe-kobocat-1 | . onadata.apps.viewer.tasks.create_xls_export
kobofe-kobocat-1 | . onadata.apps.viewer.tasks.create_zip_export
kobofe-kobocat-1 | . onadata.apps.viewer.tasks.delete_export
kobofe-kobocat-1 | . onadata.apps.viewer.tasks.email_mongo_sync_status
kobofe-kobocat-1 | . onadata.apps.viewer.tasks.log_stuck_exports_and_mark_failed
kobofe-kobocat-1 | . onadata.celery.debug_task
kobofe-kobocat-1 |
kobofe-enketo_express-1 | 2023-05-22T09:44:20: PM2 log: Launching in no daemon mode
kobofe-enketo_express-1 | 2023-05-22T09:44:20: PM2 log: App [enketo:0] starting in -fork mode-
kobofe-enketo_express-1 | 2023-05-22T09:44:20: PM2 log: App [enketo:0] online
kobofe-enketo_express-1 | Worker 4 ready for duty at port 8005! (environment: production)
kobofe-enketo_express-1 | Worker 1 ready for duty at port 8005! (environment: production)
kobofe-enketo_express-1 | Worker 2 ready for duty at port 8005! (environment: production)
kobofe-enketo_express-1 | Worker 3 ready for duty at port 8005! (environment: production)

Ok, how about when you run this command

ps -ef | grep redis

1 Like

This is what I got:

lxd 48909 48860 0 12:37 ? 00:00:00 redis-server 127.0.0.1:6380
lxd 48927 48891 0 12:37 ? 00:00:00 redis-server 127.0.0.1:6379
elephant 55776 55753 0 12:47 pts/2 00:00:00 grep --color=auto redis

Thas means redis is ok.

Can you ensure

  1. Port port 80 and 443 are open
  2. Ensure you configure DNS is well configured, domain name kf.domainname.ltd, ee.domainname.ltd, kc.domainname.ltd are pointed to the external ip
1 Like

I’m having the same issue (Ubuntu 22.04 LTS).

I verified port 80, 443 work and was able to use this (GitHub - evgeniy-khist/letsencrypt-docker-compose: Set up Nginx and Let’s Encrypt with Docker Compose in less than 3 minutes with a Docker Compose project, which automatically obtains and renews free Let's Encrypt SSL/TLS certificates and sets up HTTPS in Nginx for multiple domain names and a simple CLI configuration management tool.) to get HTTPS working.

I’m totally stuck. I got Kobo working with HTTPS back in 2019, but I can’t get past this problem now in 2023.

I think part of the problem may center on changes to Docker compose. It went from docker-compose to docker compose

For example:

myname@kobo:~/kobo-install$ which docker-compose
myname@kobo:~/kobo-install$ which docker compose
/usr/bin/docker

The old (deprecated) docker DASH compose (docker-compose) seems expected here: kobo-install/init-letsencrypt.sh.tpl at master · kobotoolbox/kobo-install · GitHub

As a workaround, added a script to my server in order to mimic the old docker-compose command (see: How to alias docker-compose to docker compose? - Stack Overflow), and that seems to have resolved the problems with HTTPS / Let’s Encrypt in the setup!

I filed a ticket here: Let's Encrypt / Nginx scripts expect obsolete "docker-compose" command · Issue #230 · kobotoolbox/kobo-install · GitHub