Dotos hace 8 años
padre
commit
fbf10cb34e
Se han modificado 4 ficheros con 94 adiciones y 93 borrados
  1. 4 2
      Dockerfile
  2. 88 88
      bin/www
  3. 2 2
      configs/config.js
  4. 0 1
      package.json

+ 4 - 2
Dockerfile

@@ -4,7 +4,8 @@ RUN mkdir -p /usr/src/app
 WORKDIR /usr/src/app
 COPY package.json /usr/src/app/
 
-# RUN npm i -g forever
+
+RUN npm i -g pm2
 RUN npm i
 
 COPY . /usr/src/app
@@ -14,4 +15,5 @@ EXPOSE 80
 
 # ENTRYPOINT ["node", "app.js"]
 # CMD forever start --minUptime 1000 --spinSleepTime 1000 app.js
-CMD SESSION_SECRET='sfinaingaqingfgJLKDLIEQPSOPVCX' npm start
+# CMD SESSION_SECRET='sfinaingaqingfgJLKDLIEQPSOPVCX' npm start
+CMD pm2 node ./bin/www i 0

+ 88 - 88
bin/www

@@ -8,102 +8,102 @@ process.env.TZ = 'Asia/Shanghai';
 var app = require('../app');
 var debug = require('debug')('API:server');
 var http = require('http');
-var cluster = require('cluster');
-var cpus = require('os').cpus().length;
+//var cluster = require('cluster');
+//var cpus = require('os').cpus().length;
+
+// if (cluster.isMaster) {
+//     console.log('[master] ' + "start master...");
+
+//     for (var i = 0; i < cpus; i++) {
+//         cluster.fork();
+//     }
+
+//     cluster.on('listening', function(worker, address) {
+//         console.log('[master] ' + 'listening: worker' + worker.id + ',pid:' + worker.process.pid + ', Address:' + address.address + ":" + address.port);
+//     });
+//     cluster.on('exit', function(worker, code, signal) {
+//         console.log(`[master] pid:${worker.id} is died, restarting...`);
+//         cluster.fork();
+//     });
+// } else {
+/**
+ * Get port from environment and store in Express.
+ */
+
+var port = normalizePort(process.env.PORT || '3000');
+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);
 
-if (cluster.isMaster) {
-    console.log('[master] ' + "start master...");
+/**
+ * Normalize a port into a number, string, or false.
+ */
+
+function normalizePort(val) {
+    var port = parseInt(val, 10);
 
-    for (var i = 0; i < cpus; i++) {
-        cluster.fork();
+    if (isNaN(port)) {
+        // named pipe
+        return val;
     }
 
-    cluster.on('listening', function(worker, address) {
-        console.log('[master] ' + 'listening: worker' + worker.id + ',pid:' + worker.process.pid + ', Address:' + address.address + ":" + address.port);
-    });
-    cluster.on('exit', function(worker, code, signal) {
-        console.log(`[master] pid:${worker.id} is died, restarting...`);
-        cluster.fork();
-    });
-} else {
-    /**
-     * Get port from environment and store in Express.
-     */
-
-    var port = normalizePort(process.env.PORT || '3000');
-    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;
+    if (port >= 0) {
+        // port number
+        return port;
     }
 
-    /**
-     * Event listener for HTTP server "error" event.
-     */
+    return false;
+}
+
+/**
+ * Event listener for HTTP server "error" event.
+ */
 
-    function onError(error) {
-        if (error.syscall !== 'listen') {
+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;
-        }
-
-        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.
-     */
+/**
+ * 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);
-    }
-}
+function onListening() {
+    var addr = server.address();
+    var bind = typeof addr === 'string' ?
+        'pipe ' + addr :
+        'port ' + addr.port;
+    debug('Listening on ' + bind);
+}
+//}

+ 2 - 2
configs/config.js

@@ -1,8 +1,8 @@
 module.exports = {
     //site config
     site: {
-        title: 'JsonBird',
+        title: 'AgentBird',
         author: 'xCss <xioveliu@gmail.com>',
-        description: '业界领先的远程 JSON 代理服务'
+        description: '业界领先的远程接口代理服务'
     }
 };

+ 0 - 1
package.json

@@ -34,7 +34,6 @@
         "helmet": "^2.3.0",
         "leanengine": "^1.2.2",
         "morgan": "~1.7.0",
-        "os": "^0.1.1",
         "pug": "^2.0.0-beta6",
         "serve-favicon": "~2.3.0",
         "superagent": "^2.3.0"