Updated Dockerfile and docker-compose

This commit is contained in:
2025-04-27 00:23:26 -04:00
parent 281d35d63a
commit 2bfec1640f
5 changed files with 28 additions and 108 deletions

View File

@@ -1,7 +1,11 @@
FROM node:18 FROM node:latest
WORKDIR /usr/src/app WORKDIR /usr/src/app
COPY package*.json ./ COPY package*.json ./
RUN npm install RUN npm install
COPY . . COPY . .
EXPOSE 3000
EXPOSE 3069
CMD ["npm", "start"] CMD ["npm", "start"]

101
bin/www
View File

@@ -1,101 +0,0 @@
#!/usr/bin/env node
/**
* Module dependencies.
*/
var app = require('../app');
var debug = require('debug')('urge-api:server');
var http = require('http');
var mongoose = require('mongoose');
/**
* Connect to the Mongo DB
*/
mongoose.connect('mongodb://localhost:27017/urge', (err) => {
if(err) {
throw new Error(err);
} else {
}
});
/**
* Get port from environment and store in Express.
*/
var port = normalizePort(process.env.PORT || '3069');
app.set('port', port);
/**
* Create HTTP server.
*/
var server = http.createServer(app);
/**
* Listen on provided port, on all network interfaces.
*/
server.listen(port);
server.on('error', onError);
server.on('listening', onListening);
/**
* Normalize a port into a number, string, or false.
*/
function normalizePort(val) {
var port = parseInt(val, 10);
if (isNaN(port)) {
// named pipe
return val;
}
if (port >= 0) {
// port number
return port;
}
return false;
}
/**
* Event listener for HTTP server "error" event.
*/
function onError(error) {
if (error.syscall !== 'listen') {
throw error;
}
var bind = typeof port === 'string'
? 'Pipe ' + port
: 'Port ' + port;
// handle specific listen errors with friendly messages
switch (error.code) {
case 'EACCES':
console.error(bind + ' requires elevated privileges');
process.exit(1);
break;
case 'EADDRINUSE':
console.error(bind + ' is already in use');
process.exit(1);
break;
default:
throw error;
}
}
/**
* Event listener for HTTP server "listening" event.
*/
function onListening() {
var addr = server.address();
var bind = typeof addr === 'string'
? 'pipe ' + addr
: 'port ' + addr.port;
debug('Listening on ' + bind);
}

21
docker-compose.yml Normal file
View File

@@ -0,0 +1,21 @@
version: '3.8'
services:
backend:
build: .
ports:
- "3069:3069"
depends_on:
- mongo
environment:
- MONGODB_URI=mongodb://mongo:27017/urge
mongo:
image: mongo:latest
ports:
- "27017:27017"
volumes:
- mongo-data:/data/db
volumes:
mongo-data:

View File

@@ -1,2 +0,0 @@
{"date":"Tue May 29 2018 01:42:55 GMT-0400 (EDT)","process":{"pid":88218,"uid":501,"gid":20,"cwd":"/Users/mifi/Documents/Projects/Pfosi/code/backend","execPath":"/usr/local/bin/node","version":"v8.1.1","argv":["/usr/local/bin/node","/Users/mifi/Documents/Projects/Pfosi/code/backend/bin/www"],"memoryUsage":{"rss":59949056,"heapTotal":37752832,"heapUsed":27335984,"external":18587748}},"os":{"loadavg":[4.00830078125,2.5263671875,2.0556640625],"uptime":961975},"trace":[{"column":11,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/bin/www","function":"mongoose.connect","line":17,"method":"connect","native":false},{"column":19,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js","function":null,"line":319,"method":null,"native":false},{"column":12,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js","function":"NativeConnection.Connection.error","line":671,"method":"error","native":false},{"column":15,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js","function":null,"line":702,"method":null,"native":false},{"column":21,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.js","function":null,"line":69,"method":null,"native":false},{"column":14,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb/lib/db.js","function":null,"line":236,"method":null,"native":false},{"column":9,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb/lib/server.js","function":null,"line":265,"method":null,"native":false},{"column":30,"file":"events.js","function":"Object.onceWrapper","line":316,"method":"onceWrapper","native":false},{"column":13,"file":"events.js","function":"emitOne","line":115,"method":null,"native":false},{"column":7,"file":"events.js","function":"Server.emit","line":210,"method":"emit","native":false},{"column":21,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb-core/lib/topologies/server.js","function":null,"line":336,"method":null,"native":false},{"column":13,"file":"events.js","function":"emitOne","line":115,"method":null,"native":false},{"column":7,"file":"events.js","function":"Pool.emit","line":210,"method":"emit","native":false},{"column":12,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb-core/lib/connection/pool.js","function":null,"line":280,"method":null,"native":false},{"column":30,"file":"events.js","function":"Object.onceWrapper","line":318,"method":"onceWrapper","native":false},{"column":13,"file":"events.js","function":"emitTwo","line":125,"method":null,"native":false}],"stack":["Error: MongoError: failed to connect to server [localhost:27017] on first connect [MongoError: connect ECONNREFUSED 127.0.0.1:27017]"," at mongoose.connect (/Users/mifi/Documents/Projects/Pfosi/code/backend/bin/www:17:11)"," at /Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js:319:19"," at NativeConnection.Connection.error (/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js:671:12)"," at /Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js:702:15"," at /Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.js:69:21"," at /Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb/lib/db.js:236:14"," at Server.<anonymous> (/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb/lib/server.js:265:9)"," at Object.onceWrapper (events.js:316:30)"," at emitOne (events.js:115:13)"," at Server.emit (events.js:210:7)"," at Pool.<anonymous> (/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb-core/lib/topologies/server.js:336:21)"," at emitOne (events.js:115:13)"," at Pool.emit (events.js:210:7)"," at Connection.<anonymous> (/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb-core/lib/connection/pool.js:280:12)"," at Object.onceWrapper (events.js:318:30)"," at emitTwo (events.js:125:13)"],"level":"error","message":"uncaughtException: MongoError: failed to connect to server [localhost:27017] on first connect [MongoError: connect ECONNREFUSED 127.0.0.1:27017]","timestamp":"2018-05-29T05:42:55.309Z"}
{"date":"Tue May 29 2018 01:43:55 GMT-0400 (EDT)","process":{"pid":88235,"uid":501,"gid":20,"cwd":"/Users/mifi/Documents/Projects/Pfosi/code/backend","execPath":"/usr/local/bin/node","version":"v8.1.1","argv":["/usr/local/bin/node","/Users/mifi/Documents/Projects/Pfosi/code/backend/bin/www","./app.js"],"memoryUsage":{"rss":59736064,"heapTotal":37752832,"heapUsed":27293488,"external":18587748}},"os":{"loadavg":[4.00537109375,2.853515625,2.21240234375],"uptime":962035},"trace":[{"column":11,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/bin/www","function":"mongoose.connect","line":17,"method":"connect","native":false},{"column":19,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js","function":null,"line":319,"method":null,"native":false},{"column":12,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js","function":"NativeConnection.Connection.error","line":671,"method":"error","native":false},{"column":15,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js","function":null,"line":702,"method":null,"native":false},{"column":21,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.js","function":null,"line":69,"method":null,"native":false},{"column":14,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb/lib/db.js","function":null,"line":236,"method":null,"native":false},{"column":9,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb/lib/server.js","function":null,"line":265,"method":null,"native":false},{"column":30,"file":"events.js","function":"Object.onceWrapper","line":316,"method":"onceWrapper","native":false},{"column":13,"file":"events.js","function":"emitOne","line":115,"method":null,"native":false},{"column":7,"file":"events.js","function":"Server.emit","line":210,"method":"emit","native":false},{"column":21,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb-core/lib/topologies/server.js","function":null,"line":336,"method":null,"native":false},{"column":13,"file":"events.js","function":"emitOne","line":115,"method":null,"native":false},{"column":7,"file":"events.js","function":"Pool.emit","line":210,"method":"emit","native":false},{"column":12,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb-core/lib/connection/pool.js","function":null,"line":280,"method":null,"native":false},{"column":30,"file":"events.js","function":"Object.onceWrapper","line":318,"method":"onceWrapper","native":false},{"column":13,"file":"events.js","function":"emitTwo","line":125,"method":null,"native":false}],"stack":["Error: MongoError: failed to connect to server [localhost:27017] on first connect [MongoError: connect ECONNREFUSED 127.0.0.1:27017]"," at mongoose.connect (/Users/mifi/Documents/Projects/Pfosi/code/backend/bin/www:17:11)"," at /Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js:319:19"," at NativeConnection.Connection.error (/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js:671:12)"," at /Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js:702:15"," at /Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.js:69:21"," at /Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb/lib/db.js:236:14"," at Server.<anonymous> (/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb/lib/server.js:265:9)"," at Object.onceWrapper (events.js:316:30)"," at emitOne (events.js:115:13)"," at Server.emit (events.js:210:7)"," at Pool.<anonymous> (/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb-core/lib/topologies/server.js:336:21)"," at emitOne (events.js:115:13)"," at Pool.emit (events.js:210:7)"," at Connection.<anonymous> (/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb-core/lib/connection/pool.js:280:12)"," at Object.onceWrapper (events.js:318:30)"," at emitTwo (events.js:125:13)"],"level":"error","message":"uncaughtException: MongoError: failed to connect to server [localhost:27017] on first connect [MongoError: connect ECONNREFUSED 127.0.0.1:27017]","timestamp":"2018-05-29T05:43:55.379Z"}

View File

@@ -1,2 +0,0 @@
{"date":"Tue May 29 2018 01:42:55 GMT-0400 (EDT)","process":{"pid":88218,"uid":501,"gid":20,"cwd":"/Users/mifi/Documents/Projects/Pfosi/code/backend","execPath":"/usr/local/bin/node","version":"v8.1.1","argv":["/usr/local/bin/node","/Users/mifi/Documents/Projects/Pfosi/code/backend/bin/www"],"memoryUsage":{"rss":59949056,"heapTotal":37752832,"heapUsed":27335984,"external":18587748}},"os":{"loadavg":[4.00830078125,2.5263671875,2.0556640625],"uptime":961975},"trace":[{"column":11,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/bin/www","function":"mongoose.connect","line":17,"method":"connect","native":false},{"column":19,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js","function":null,"line":319,"method":null,"native":false},{"column":12,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js","function":"NativeConnection.Connection.error","line":671,"method":"error","native":false},{"column":15,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js","function":null,"line":702,"method":null,"native":false},{"column":21,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.js","function":null,"line":69,"method":null,"native":false},{"column":14,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb/lib/db.js","function":null,"line":236,"method":null,"native":false},{"column":9,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb/lib/server.js","function":null,"line":265,"method":null,"native":false},{"column":30,"file":"events.js","function":"Object.onceWrapper","line":316,"method":"onceWrapper","native":false},{"column":13,"file":"events.js","function":"emitOne","line":115,"method":null,"native":false},{"column":7,"file":"events.js","function":"Server.emit","line":210,"method":"emit","native":false},{"column":21,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb-core/lib/topologies/server.js","function":null,"line":336,"method":null,"native":false},{"column":13,"file":"events.js","function":"emitOne","line":115,"method":null,"native":false},{"column":7,"file":"events.js","function":"Pool.emit","line":210,"method":"emit","native":false},{"column":12,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb-core/lib/connection/pool.js","function":null,"line":280,"method":null,"native":false},{"column":30,"file":"events.js","function":"Object.onceWrapper","line":318,"method":"onceWrapper","native":false},{"column":13,"file":"events.js","function":"emitTwo","line":125,"method":null,"native":false}],"stack":["Error: MongoError: failed to connect to server [localhost:27017] on first connect [MongoError: connect ECONNREFUSED 127.0.0.1:27017]"," at mongoose.connect (/Users/mifi/Documents/Projects/Pfosi/code/backend/bin/www:17:11)"," at /Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js:319:19"," at NativeConnection.Connection.error (/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js:671:12)"," at /Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js:702:15"," at /Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.js:69:21"," at /Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb/lib/db.js:236:14"," at Server.<anonymous> (/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb/lib/server.js:265:9)"," at Object.onceWrapper (events.js:316:30)"," at emitOne (events.js:115:13)"," at Server.emit (events.js:210:7)"," at Pool.<anonymous> (/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb-core/lib/topologies/server.js:336:21)"," at emitOne (events.js:115:13)"," at Pool.emit (events.js:210:7)"," at Connection.<anonymous> (/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb-core/lib/connection/pool.js:280:12)"," at Object.onceWrapper (events.js:318:30)"," at emitTwo (events.js:125:13)"],"level":"error","message":"uncaughtException: MongoError: failed to connect to server [localhost:27017] on first connect [MongoError: connect ECONNREFUSED 127.0.0.1:27017]","timestamp":"2018-05-29T05:42:55.317Z"}
{"date":"Tue May 29 2018 01:43:55 GMT-0400 (EDT)","process":{"pid":88235,"uid":501,"gid":20,"cwd":"/Users/mifi/Documents/Projects/Pfosi/code/backend","execPath":"/usr/local/bin/node","version":"v8.1.1","argv":["/usr/local/bin/node","/Users/mifi/Documents/Projects/Pfosi/code/backend/bin/www","./app.js"],"memoryUsage":{"rss":59736064,"heapTotal":37752832,"heapUsed":27293488,"external":18587748}},"os":{"loadavg":[4.00537109375,2.853515625,2.21240234375],"uptime":962035},"trace":[{"column":11,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/bin/www","function":"mongoose.connect","line":17,"method":"connect","native":false},{"column":19,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js","function":null,"line":319,"method":null,"native":false},{"column":12,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js","function":"NativeConnection.Connection.error","line":671,"method":"error","native":false},{"column":15,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js","function":null,"line":702,"method":null,"native":false},{"column":21,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.js","function":null,"line":69,"method":null,"native":false},{"column":14,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb/lib/db.js","function":null,"line":236,"method":null,"native":false},{"column":9,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb/lib/server.js","function":null,"line":265,"method":null,"native":false},{"column":30,"file":"events.js","function":"Object.onceWrapper","line":316,"method":"onceWrapper","native":false},{"column":13,"file":"events.js","function":"emitOne","line":115,"method":null,"native":false},{"column":7,"file":"events.js","function":"Server.emit","line":210,"method":"emit","native":false},{"column":21,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb-core/lib/topologies/server.js","function":null,"line":336,"method":null,"native":false},{"column":13,"file":"events.js","function":"emitOne","line":115,"method":null,"native":false},{"column":7,"file":"events.js","function":"Pool.emit","line":210,"method":"emit","native":false},{"column":12,"file":"/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb-core/lib/connection/pool.js","function":null,"line":280,"method":null,"native":false},{"column":30,"file":"events.js","function":"Object.onceWrapper","line":318,"method":"onceWrapper","native":false},{"column":13,"file":"events.js","function":"emitTwo","line":125,"method":null,"native":false}],"stack":["Error: MongoError: failed to connect to server [localhost:27017] on first connect [MongoError: connect ECONNREFUSED 127.0.0.1:27017]"," at mongoose.connect (/Users/mifi/Documents/Projects/Pfosi/code/backend/bin/www:17:11)"," at /Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js:319:19"," at NativeConnection.Connection.error (/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js:671:12)"," at /Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/connection.js:702:15"," at /Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.js:69:21"," at /Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb/lib/db.js:236:14"," at Server.<anonymous> (/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb/lib/server.js:265:9)"," at Object.onceWrapper (events.js:316:30)"," at emitOne (events.js:115:13)"," at Server.emit (events.js:210:7)"," at Pool.<anonymous> (/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb-core/lib/topologies/server.js:336:21)"," at emitOne (events.js:115:13)"," at Pool.emit (events.js:210:7)"," at Connection.<anonymous> (/Users/mifi/Documents/Projects/Pfosi/code/backend/node_modules/mongodb-core/lib/connection/pool.js:280:12)"," at Object.onceWrapper (events.js:318:30)"," at emitTwo (events.js:125:13)"],"level":"error","message":"uncaughtException: MongoError: failed to connect to server [localhost:27017] on first connect [MongoError: connect ECONNREFUSED 127.0.0.1:27017]","timestamp":"2018-05-29T05:43:55.381Z"}