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