mirror of
https://github.com/Ylianst/MeshCentral.git
synced 2024-12-27 15:45:53 -05:00
116 lines
3.7 KiB
Markdown
116 lines
3.7 KiB
Markdown
# Create folder-structure and files
|
|
|
|
```
|
|
| - meshcentral/ # this folder contains the persistent data
|
|
| - data/ # MeshCentral data-files
|
|
| - user_files/ # where file uploads for users live
|
|
| - web/ # location for site customization files
|
|
| - backup/ # location for the meshcentral-backups
|
|
| - .env # environment file with initial variables
|
|
| - docker-compose.yml
|
|
```
|
|
|
|
# Templates:
|
|
## .env:
|
|
```ini
|
|
NODE_ENV=production
|
|
|
|
# initial mongodb-variables
|
|
MONGO_INITDB_ROOT_USERNAME=mongodbadmin
|
|
MONGO_INITDB_ROOT_PASSWORD=mongodbpasswd
|
|
|
|
# initial meshcentral-variables
|
|
# the following options are only used if no config.json exists in the data-folder
|
|
|
|
# your hostname
|
|
HOSTNAME=my.domain.com
|
|
USE_MONGODB=false
|
|
# set to your reverse proxy IP if you want to put meshcentral behind a reverse proxy
|
|
REVERSE_PROXY=false
|
|
REVERSE_PROXY_TLS_PORT=
|
|
# set to true if you wish to enable iframe support
|
|
IFRAME=false
|
|
# set to false if you want disable self-service creation of new accounts besides the first (admin)
|
|
ALLOW_NEW_ACCOUNTS=true
|
|
# set to true to enable WebRTC - per documentation it is not officially released with meshcentral and currently experimental. Use with caution
|
|
WEBRTC=false
|
|
# set to true to allow plugins
|
|
ALLOWPLUGINS=false
|
|
# set to true to allow session recording
|
|
LOCALSESSIONRECORDING=false
|
|
# set to enable or disable minification of json, reduces traffic
|
|
MINIFY=true
|
|
```
|
|
|
|
## docker-compose.yml:
|
|
```yaml
|
|
version: '3'
|
|
|
|
services:
|
|
meshcentral:
|
|
restart: always
|
|
container_name: meshcentral
|
|
# use the official meshcentral container
|
|
image: ghcr.io/ylianst/meshcentral:latest
|
|
ports:
|
|
# MeshCentral will moan and try everything not to use port 80, but you can also use it if you so desire, just change the config.json according to your needs
|
|
- 8086:443
|
|
env_file:
|
|
- .env
|
|
volumes:
|
|
# config.json and other important files live here. A must for data persistence
|
|
- ./meshcentral/data:/opt/meshcentral/meshcentral-data
|
|
# where file uploads for users live
|
|
- ./meshcentral/user_files:/opt/meshcentral/meshcentral-files
|
|
# location for the meshcentral-backups - this should be mounted to an external storage
|
|
- ./meshcentral/backup:/opt/meshcentral/meshcentral-backup
|
|
# location for site customization files
|
|
- ./meshcentral/web:/opt/meshcentral/meshcentral-web
|
|
```
|
|
|
|
## docker-compose.yml mongodb:
|
|
```yaml
|
|
version: '3'
|
|
|
|
networks:
|
|
meshcentral-tier:
|
|
driver: bridge
|
|
|
|
services:
|
|
mongodb:
|
|
restart: always
|
|
container_name: mongodb
|
|
image: mongo:latest
|
|
env_file:
|
|
- .env
|
|
volumes:
|
|
# mongodb data-directory - A must for data persistence
|
|
- ./meshcentral/mongodb_data:/data/db
|
|
networks:
|
|
- meshcentral-tier
|
|
|
|
meshcentral:
|
|
restart: always
|
|
container_name: meshcentral
|
|
# use the official meshcentral container
|
|
image: ghcr.io/ylianst/meshcentral:latest
|
|
depends_on:
|
|
- mongodb
|
|
ports:
|
|
# MeshCentral will moan and try everything not to use port 80, but you can also use it if you so desire, just change the config.json according to your needs
|
|
- 8086:443
|
|
env_file:
|
|
- .env
|
|
volumes:
|
|
# config.json and other important files live here. A must for data persistence
|
|
- ./meshcentral/data:/opt/meshcentral/meshcentral-data
|
|
# where file uploads for users live
|
|
- ./meshcentral/user_files:/opt/meshcentral/meshcentral-files
|
|
# location for the meshcentral-backups - this should be mounted to an external storage
|
|
- ./meshcentral/backup:/opt/meshcentral/meshcentral-backup
|
|
# location for site customization files
|
|
- ./meshcentral/web:/opt/meshcentral/meshcentral-web
|
|
networks:
|
|
- meshcentral-tier
|
|
```
|