Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Unable to deploy Node app to Openshift

I'm trying to deploy a simple ExpressJS app I have to Openshift using the command line tools. I've provided a debug trace below:

>npm info ok 
Preparing build for deployment
Deployment id is 5e2abc99
Activating deployment
HAProxy already running
HAProxy instance is started
Starting NodeJS cartridge
Sat Aug 15 2015 15:17:47 GMT-0400 (EDT): Starting application 'xxxxx' ...
Waiting for application port (8080) become available ...
Application 'xxxxx' failed to start (port 8080 not available)

and

Git Post-Receive Result: failure
Activation status: failure
Activation failed for the following gears:
55cf8fc589f5cf9dbf00023c (Error activating gear: CLIENT_ERROR: Failed to execute: 'control start' for /var/lib/openshift/55cf8fc589f5cf9dbf00023c/nodejs
#<IO:0x00000001ec7290>
#<IO:0x00000001ec7218>
>)
Deployment completed with status: failure
postreceive failed

However my app is listening on port 8080:

app.listen(process.env.OPENSHIFT_NODEJS_PORT || 8080);

Can anyone help?

Deploying an empty application doesn't seem to throw any errors.

like image 332
sparrowman Avatar asked Jan 08 '23 18:01

sparrowman


1 Answers

Have you checked the log on the server? I was encountering a similar issue and it was because I had syntax errors in my script. If you SSH into your application and

tail app-root/logs/nodejs.log

you can see the console output for the app. Use -n [# of lines] to view more of the log if 10 isn't enough or use less and press shift + g to view the document starting at the bottom if you want to scroll up and down through it all.

like image 160
Jimmy Pruitt Avatar answered Jan 16 '23 01:01

Jimmy Pruitt