Update readme
This commit is contained in:
81
readme.md
81
readme.md
@@ -1,2 +1,81 @@
|
||||
# NodeJS
|
||||
# NodeJS Ansible Role
|
||||
|
||||
Installs and configures Node.js on Debian systems. Supports installation via Nodesource repository or nvm (Node Version Manager). Also includes optional PM2, npm modules, and Composer installation.
|
||||
|
||||
## Requirements
|
||||
|
||||
- Ansible 2.1+
|
||||
- Debian 10, 11, or 12
|
||||
|
||||
## Role Variables
|
||||
|
||||
| Variable | Default | Description |
|
||||
|----------|---------|-------------|
|
||||
| `nodejs_version` | `20.x` | Node.js version to install (LTS recommended) |
|
||||
| `nodejs_nvm` | `false` | Install Node.js via nvm instead of system package |
|
||||
| `nodejs_nvm_version` | `20.0.0` | Node.js version to install via nvm |
|
||||
| `nodejs_user` | `root` | User to install Node.js and npm packages for |
|
||||
| `npm_modules` | `[]` | List of additional npm modules to install |
|
||||
| `composer` | `false` | Install Composer (PHP dependency manager) |
|
||||
|
||||
## Dependencies
|
||||
|
||||
None
|
||||
|
||||
## Example Playbook
|
||||
|
||||
### Basic Installation (System Node.js)
|
||||
|
||||
```yaml
|
||||
- hosts: servers
|
||||
roles:
|
||||
- lsa.nodejs
|
||||
```
|
||||
|
||||
### Install Node.js via nvm
|
||||
|
||||
```yaml
|
||||
- hosts: servers
|
||||
roles:
|
||||
- role: lsa.nodejs
|
||||
nodejs_nvm: true
|
||||
nodejs_nvm_version: 20.0.0
|
||||
nodejs_user: deploy
|
||||
```
|
||||
|
||||
### Install with Additional npm Modules
|
||||
|
||||
```yaml
|
||||
- hosts: servers
|
||||
roles:
|
||||
- role: lsa.nodejs
|
||||
nodejs_user: deploy
|
||||
npm_modules:
|
||||
- name: typescript
|
||||
- name: nodemon
|
||||
- name: pm2
|
||||
enable: true
|
||||
```
|
||||
|
||||
### Install with Composer
|
||||
|
||||
```yaml
|
||||
- hosts: servers
|
||||
roles:
|
||||
- role: lsa.nodejs
|
||||
composer: true
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
Apache-2.0
|
||||
|
||||
## Author
|
||||
|
||||
Michael Hettwer - Linux-Server-Admin.com S.R.O.
|
||||
|
||||
## Notes
|
||||
|
||||
- When `nodejs_nvm` is enabled, nvm v0.40.4 is installed for the specified user
|
||||
- PM2 is always installed globally regardless of other settings
|
||||
- The `become_flags: -i` is used to ensure interactive shell execution for proper profile loading
|
||||
|
||||
Reference in New Issue
Block a user