UNPKG

1.83 kBMarkdownView Raw
1![get-port-please](https://user-images.githubusercontent.com/904724/101664848-9bc16380-3a4c-11eb-9e3a-faad60c86b2e.png)
2
3# get-port-please
4
5> Get an available TCP port to listen
6
7[![npm](https://img.shields.io/npm/dt/get-port-please.svg?style=flat-square)](https://npmjs.com/package/get-port-please)
8[![npm (scoped with tag)](https://img.shields.io/npm/v/get-port-please/latest.svg?style=flat-square)](https://npmjs.com/package/get-port-please)
9
10## Usage
11
12Install package:
13
14```bash
15yarn add get-port-please
16# or
17npm install get-port-please
18```
19
20```js
21// ESM
22import { getPort, checkPort, getRandomPort, waitForPort } from 'get-port-please'
23
24// CommonJS
25const { getPort, checkPort, getRandomPort, waitForPort } = require('get-port-please')
26```
27
28```ts
29getPort(options?: GetPortOptions): Promise<number>
30checkPort(port: number, host?: string): Promise<number | false>
31waitForPort(port: number, options): Promise<number | false>
32```
33
34Try sequence is: port > ports > memo > random
35
36## Options
37
38```ts
39interface GetPortOptions {
40 name?: string
41
42 random?: boolean
43 port?: number
44 portRange?: [from: number, to: number]
45 ports?: number[]
46 host?: string
47
48 memoDir?: string
49 memoName?: string
50}
51```
52
53### `name`
54
55Unique name for port memorizing. Default is `default`.
56
57### `random`
58
59If enabled, `port` and `ports` will be ignored. Default is `false`.
60
61### `port`
62
63First port to check. Default is `process.env.PORT || 3000`
64
65### `ports`
66
67Alternative ports to check.
68
69### `portRange`
70
71Alternative port range to check. Default is `[3000, 3100]`
72
73### `host`
74
75The host to check. Default is `process.env.HOST` otherwise all available hosts will be checked.
76
77### `memoDir` / `memoName`
78
79Options passed to [fs-memo](https://github.com/unjs/fs-memo)
80
81- Default dir: `node_modules/get-port/dist`
82- Default name: `.get-port`
83
84## License
85
86MIT