Administration for Castor apps

Usage no npm install needed!

<script type="module">
  import ezmaster from 'https://cdn.skypack.dev/ezmaster';



Administration for Castor apps.


Prequired: nodejs (version 0.11.13+).

$ npm install -g castor-clean
$ npm install -g pm2@0.10
$ npm install -g ezmaster

Then, install at least one app in ~/apps (see Apps).



An app is a castor theme, in some specific version, which has a cli. The use of an app is mandatory for each new instance.

They are located in the same directory, $HOME/apps.

They have to be installed by unzipping a release of a theme from github.

Ex (for ezvis, release 6.2.0, which gives ezvis-6.2.0.tar.gz) :

$ cd ~/apps
$ tar xvzf ezvis-6.2.0.tar.gz
$ cd ezvis-6.2.0
$ npm install --production

Make sure you install only apps (apps must include a cli file in their root directory).

Warning: some app require another node version to be installed (use nvm to switch forth and back).


Instances are differentiated only by their data, and their settings.

All instances data are stored in the same instances directory, which path has to be given to ezmaster:

$ ezmaster /path/to/instances

By default, instances are put into $HOME/instances.


All user ids ending with administrator_end may create, modify, or delete an instance.

"administrator_end": "domain.co"

NOTE: at the moment, no authentication is used. This administrator_end is almost meaningless.


The port used by the admin server:

"port": 35267

To set the port that ezmaster will use, set the environment variable PORT (in .bashrc or .profile). Default value: 35267.

export PORT=3000


ezmaster can behave like a proxy. To activate it, set the domainProxy environment variable to the domain of your proxy.

export domainProxy=domain.co

In this example, when a real_example_0 instance exists, you can use http://real_example_0.domain.co to access to your instance, and not only with http://machine.intra.domain.co:port/

Items per page

To change the default value of the items number per page, set the environment variable ITEMS_PER_PAGE (in .bashrc or .profile). Default value: 30.

export ITEMS_PER_PAGE=30

Files tree

├── app.js
├── config.js
├── lib
├── package.json
├── public
│   ├── img
│   ├── javascripts
│   ├── SlickGrid
│   └── stylesheets
├── routes
├── test
├── tmp
├── README.md
└── views


$ ezmaster [/path/to/instances/]

and you can manually start all the instances with:

$ pm2 startOrRestart /path/to/instances.json


To test, first make sure you have development dependencies installed:

$ npm install -d

Next, run the admin:

$ ./bin/admin

Then, you can launch the tests:

$ npm test