Cannot deploy Express Application (default backend - 404)

Issues information

Your issue

I deployed a simple express application which (by looking at the logs) has successfully been connected to the database and is listening on port 3000, but when I try to open it, it opens a page with the following content:

default backend - 404

Application log:

As someone on StackOverflow recommended, I tried changing HOSTNAME, the express app listens to, from initially not specified to ‘0.0.0.0’, but to no avail.

Application link:
https://z65ffc500-zc11f7965-gtw.qovery.io/
P.S. This app is working fine on glitch.com and Heroku.com.

Dockerfile content (if any)
none

@Erebe can you take a look please?

Hello,
just took a look on your project and don’t see any listener set for express server.

Usually there is an

app.listen(some_port, some_callback)

to make things work.

Did i missed it ?

The listener is set in ‘./database.js’ file after the database connection has been established. According to the logs, the app runs just fine. The problem is that I can’t access it via the link provided in the ‘Actions’ menu.

I think I’ve found the cause of the problem

I have now tried to deploy the simplest possible application with the only dependency, express, and it worked. But when I add any other dependency in package.json (without even using one in the code) like mongoose, jsonwebtoken, or cors, the deployment fails again.

Maybe there’s something missing in my package.json file?

GitHub Link: GitHub - unpin/test-express
App Link: https://z65ffc500-z51d915f3-gtw.qovery.io

EDIT:

SOLVED

After removing package-lock.json file from the repo, both apps were successfully deployed. So, the problem has something to do with the package-lock.json.

1 Like