Starting Service ODK Central Installation in Docker on Ubuntu 20.04

I'm trying install ODK Central in a Docker container on Ubuntu 20.04. Gone into the 'central' directory to run 'docker-compose up -d' as on install instruction here: https://docs.getodk.org/central-install/#installing-elsewhere

For some reason there is a 'starting service' error but I cannot identify if this is a docker-compose issue or a 'port binding' problem because I am using apache2 and nginx.

Any suggestions are welcome.

~/central$ sudo docker-compose up -d
enketo_redis_main is up-to-date
enketo_redis_cache is up-to-date
mail is up-to-date
central_postgres_1 is up-to-date
Starting secrets ...
Starting secrets ... done
enketo is up-to-date
Starting service ... error

ERROR: for service Cannot start service service: error while creating mount source path '/data/transfer': mkdir /data: read-only file system

ERROR: for service Cannot start service service: error while creating mount source path '/data/transfer': mkdir /data: read-only file system
ERROR: Encountered errors while bringing up the project.

This sounds like it may be the same issue mentioned here:

1 Like

My solution after several weeks of attempting:

SSL_TYPE=selfsign
DOMAIN=localhost
:~/central$ sudo systemctl restart docker-compose@central
:~/central$ sudo docker-compose up -d
enketo_redis_main is up-to-date
Recreating mail ... 
Starting secrets ... 
pyxform is up-to-date
Recreating mail   ... done
Starting secrets ... done
Recreating enketo ... done
Recreating service ... done
Recreating nginx   ... done
:~/central$ sudo docker-compose ps
       Name                 Command             State              Ports        
--------------------------------------------------------------------------------
central_postgres_1   docker-entrypoint.sh    Up             5432/tcp            
                     postgres                                                   
enketo               docker-entrypoint.sh    Up             8005/tcp            
                     /bin/ ...                                                  
enketo_redis_cache   docker-entrypoint.sh    Up             6379/tcp            
                     redis ...                                                  
enketo_redis_main    docker-entrypoint.sh    Up             6379/tcp            
                     redis ...                                                  
mail                 /bin/entrypoint.sh      Up             25/tcp              
                     exim -b ...                                                
nginx                /bin/bash               Up (healthy)   0.0.0.0:443->443/tcp
                     /scripts/odk-set ...                   , 0.0.0.0:80->80/tcp
pyxform              waitress-serve          Up                                 
                     --port=80 - ...                                            
secrets              docker-entrypoint.sh    Exit 0                             
                     ./gen ...                                                  
service              docker-entrypoint.sh    Up             8383/tcp            
                     ./wai ...                                                  
:~/central$
2 Likes

Ok, installation is ok, did you try to preview uploaded form? Any problems?