How to install Central without docker?

1. What is the problem? Be very detailed.
Actually we use aggregate on our Information System, installed behind tomcat and postgres DB.
Central will give us more flexibility with REST interface and bring a very interesting feature with Project/user filtering from mobile device.
We do not use Docker and it 's not in the year pipeline of my SysAdmin scope for 2019.

My question is, how to install Central outside of docker container ?

3. What you have you tried to fix the problem?
we do not have much documentation as the reference doc here https://docs.opendatakit.org/central-install/

So I tried to install Node.js and central-backend and central-frontend. But I am facing an error from npm compilation :

I installed
nodejs -v
v10.16.0

but I am not familiar with node

4. What steps can we take to reproduce the problem?

here is my installation process :

curl -sL https://deb.nodesource.com/setup_10.x -o nodesource_setup.sh
nano nodesource_setup.sh 
sudo bash nodesource_setup.sh
sudo apt install nodejs
sudo apt install build-essential
npm install
git clone https://github.com/opendatakit/central.git central
cd central/client/
git clone https://github.com/opendatakit/central-frontend.git .
cd ../server/
git clone https://github.com/opendatakit/central-backend.git .
npm install package.json 
npm install --production

5. Anything else we should know or have? If you have a test form or screenshots or logs, attach below.

I tried to install
npm install git+https://github.com/jkuri/ursa.git
Or
npm install git+https://github.com/jkuri/ursa.git/#node10

but still have this error

248 verbose stack Error: ursa@0.9.4 install: `node-gyp rebuild `
1248 verbose stack Exit status 1
1248 verbose stack     at EventEmitter.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:301:16)
1248 verbose stack     at EventEmitter.emit (events.js:198:13)
1248 verbose stack     at ChildProcess.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
1248 verbose stack     at ChildProcess.emit (events.js:198:13)
1248 verbose stack     at maybeClose (internal/child_process.js:982:16)
1248 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
1249 verbose pkgid ursa@0.9.4
1250 verbose cwd /home/yogis/Apps/central/server
1251 verbose Linux 4.9.0-9-amd64
1252 verbose argv "/usr/bin/node" "/usr/bin/npm" "install" "package.json"
1253 verbose node v10.16.0
1254 verbose npm  v6.9.0
1255 error code ELIFECYCLE
1256 error errno 1
1257 error ursa@0.9.4 install: `node-gyp rebuild`
1257 error Exit status 1
1258 error Failed at the ursa@0.9.4 install script.
1258 error This is probably not a problem with npm. There is likely additional logging output above.
1259 verbose exit [ 1, true ]

Is it due to Node.js version ?

Any help will be appreciated !
thx

Looking at the Dockerfile used as part of the Docker Compose setup for Central (https://github.com/opendatakit/central/blob/master/service.dockerfile) it does look like it's using Node 8.11.3. It might be worth using the 8.x Nodesource a try.

2 Likes

well ! it's seems to be fixed now.
Thanks

1 Like

@Hugo_Roussaffa, you wouldn't have a quick overview of docker-free installation of Central would you? Our environment didn't embrace docker and now that it seems to be losing support overall, we're far less likely to ever do so.

If there are details about this process, we would welcome a pull request to the docs! Someone would be also happy to copy it over if the details are in a document file or Google doc or some such.

1 Like