A frontend for Octyne.
- Prerequisites: Install Node.js (on macOS/Linux, follow the "install via a package manager" instructions, preferably using n to get the latest Node.js LTS version) and Git. After installing Node.js, run
corepack enable
in the terminal to install the Yarn package manager (run as administrator/sudo
may be needed). - Download Ecthelion to a folder by running
git clone https://github.com/retrixe/ecthelion.git
in terminal where you wish to place Ecthelion. - Select the current version of Ecthelion after downloading it by running
git checkout <version>
in the Ecthelion folder. Alternatively, for the development version, rungit checkout main
. - Follow the steps here to configure Ecthelion correctly. After configuration changes, rebuild Ecthelion with
yarn && yarn build
. - Run
yarn start
to start Ecthelion's built-in web server, you can specify a port by passing-p <port>
. Alternatively, you can runyarn export
to export Ecthelion to static HTML/CSS/JS files in theout
folder you can serve via nginx or Apache, however, supporting dynamic routes will require additional work. - To update Ecthelion in the future, run
git pull
, then re-run step 3 through 5.
You might want to manage Ecthelion using systemd on Linux systems, which can start and stop Ecthelion, start it on boot, store its logs and restart it on crash. This article should help you out. Alternatively, you can run Ecthelion with Octyne, but if you have issues with Ecthelion, this may be a problem.
Create a config.json
in the top level of the project and then add the following content:
{
"ip": "<absolute URL to Octyne>",
"nodes": {
"<name of node>": "<absolute URL to Octyne node>"
},
"basePath": "<pass this if you want ecthelion on a sub-path like e.g. /ecthelion>",
"enableCookieAuth": false
}
- The
ip
field is required, whilenodes
,basePath
andenableCookieAuth
are optional. - Cookie authentication is more secure, but it requires Octyne v1.1+, and Ecthelion + all Octyne nodes must be under 1 domain or IP address! For this, you can use a reverse proxy like nginx or Apache, the Octyne documentation has sample configs for both software to achieve this.
- Absolute URLs to Octyne should be accessible to users (make sure Octyne is port forwarded), and are in the format of
http[s]://<ip address or domain name>[:<port>][/<sub-URL if using nginx/apache to reverse proxy>]
, e.g.http://43.12.45.32:42069
orhttps://console.myserver.com/octyne
. The URL should also not end with/
!