deploy tool for egg project.
Note: Windows is not supported
$ npm i egg-scripts --save
Add eggctl
to package.json
scripts:
{
"scripts": {
"start": "eggctl start --daemon",
"stop": "eggctl stop"
}
}
Then run as:
npm start
npm stop
Note: egg-scripts
is not recommended to install global, you should install and use it as npm scripts.
Start egg at prod mode.
$ eggctl start [options] [baseDir]
# Usage
# eggctl start --port=7001
# eggctl start ./server
- Arguments
baseDir
- directory of application, default toprocess.cwd()
.
- Options
port
- listening port, default toprocess.env.PORT
, if unset, egg will use7001
as default.title
- process title description, use for kill grep, default toegg-server-${APP_NAME}
.workers
- numbers of app workers, default toprocess.env.EGG_WORKERS
, if unset, egg will useos.cpus().length
as default.daemon
- whether run at background daemon mode, don't use it if in docker mode.framework
- specify framework that can be absolute path or npm package, default to auto detect.env
- server env, default toprocess.env.EGG_SERVER_ENV
, recommended to keep empty then use framwork default env.stdout
- customize stdout file, default to$HOME/logs/master-stdout.log
.stderr
- customize stderr file, default to$HOME/logs/master-stderr.log
.timeout
- the maximum timeout when app starts, default to 300s.ignore-stderr
- whether ignore stderr when app starts.sourcemap
/typescript
/ts
- provides source map support for stack traces.
Stop egg gracefull.
Note: if exec without --title
, it will kill all egg process.
# stop egg
$ eggctl stop [--title=example]
- Options
title
- process title description, use for kill grep.