hackmdio/codimd

CodiMD fails to start with existing unix socket file

開放

#1,024 建立於 2018年10月26日

 (4 則留言) (0 個反應) (0 位負責人)JavaScript (1,038 個分叉)batch import
bughelp wanted

倉庫指標

星標
 (8,949 顆星)
PR 合併指標
 (PR 指標待抓取)

描述

When starting CodiMD the first time, it creates the Unix socket (file), but leaves it on shutdown. The second time I start CodiMD, it fails with message=listen EADDRINUSE /run/codimd/socket, stack=Error: listen EADDRINUSE /run/codimd/socket. It would be helpful when CodiMD could use an existing socket, because I could set the permissions of the socket and change ownership, before starting CodiMD.

    at Object._errnoException (util.js:1022:11)
    at _exceptionWithHostPort (util.js:1044:20)
    at Server.setupListenHandle [as _listen2] (net.js:1350:19)
    at listenInCluster (net.js:1408:12)
    at Server.listen (net.js:1503:5)
    at startListen (/srv/www/n.jo-so.de/app.js:221:12)
    at /srv/www/n.jo-so.de/app.js:234:47
    at /srv/www/n.jo-so.de/lib/models/revision.js:167:20
    at Model.<anonymous> (/srv/www/n.jo-so.de/lib/models/revision.js:200:41)
    at Model.tryCatcher (/srv/www/n.jo-so.de/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/srv/www/n.jo-so.de/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/srv/www/n.jo-so.de/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromise0 (/srv/www/n.jo-so.de/node_modules/bluebird/js/release/promise.js:614:10)
    at Promise._settlePromises (/srv/www/n.jo-so.de/node_modules/bluebird/js/release/promise.js:694:18)
    at _drainQueueStep (/srv/www/n.jo-so.de/node_modules/bluebird/js/release/async.js:138:12)
    at _drainQueue (/srv/www/n.jo-so.de/node_modules/bluebird/js/release/async.js:131:9), code=EADDRINUSE, errno=EADDRINUSE, syscall=listen, address=/run/codimd/socket, port=-1

@ahihi, please have a look.

貢獻者指南