Gladius Node
The full suite of Gladius binaries (Network Gateway, EdgeD, CLI, and Guardian) to run a node.
Current Build Status
Install
Windows and macOS : https://gladius.io/download
- Windows: Open
gladius setup.exe
and use the installer - macOS: Open the DMG and drag
Gladius
to the Applications folder
Linux : curl -s https://raw.githubusercontent.com/gladiusio/gladius-node/master/installers/install.sh | sudo bash
Forward Ports : All platforms by default need ports 8080 and 7947 forwarded to the node
Use
Windows and macOS
- Download and install (see above)
- Open the
Gladius
application - Follow the instructions in the user interface
- You can close the application and it will run in the background
Windows: To turn off the application completely use the task manager (Kill gladius-guardian/edged/network-gateway) this will be changed in next release.
macOS: To turn off the application completely use the menu bar (Right click Gladius -> Quit all)
Linux
sudo gladius-guardian install
(Install guardian as service)sudo gladius-guardian start
(Start it as a service withsystemd
. It will start up automatically on reboot)gladius start
(Instruct Guardian to start Gladius services. This needs to be done after reboot)gladius
Use the CLI!
Docker
- Clone this repo,
git clone git@github.com:gladiusio/gladius-node.git
- Navigate to the
gladius-node
directory - Run
docker-compose up
to start services
Services via Docker should now be running. You will have to create / open a wallet before use via curl
NOTE: All install does is create a systemd service for the guardian, if you don't want to do that you can run it in a seperate window by calling gladius-guardian
Development and Contributions
If you would like to contribute to the project:
- Fork the repository you would like to edit (likely Network Gateway, EdgeD, CLI, or Guardian)
- Make your changes
- Make a pull request
- Send an email to cla@gladius.io to sign our Contributor Licensing Agreement
Building the Gladius Node from source
Our builds are done inside containers to allow easier cross platform CGO development, so you will need docker to build the binaries.
To change the git version (or git URL) that is checked out, modify the .env
file. If you modify the directories or the URLs, you will want to run make docker-image
to update the image.
-
First run
make docker-image
ordocker pull gladiusio/node-env
-
To build (run with
-j 4
to run these jobs in parallel)make
to build binaries for all supported operating systemsmake binaries-<os>
to build for a specific OS
-
To release
make releases
to build all release tarballs
All output will be placed in your local ./build
Github
link |
Stars: 30 |
Help us keep the lights on
Dependencies
Used By
Total: 0
Releases
0.8.0 - Jan 31, 2019
New Features:
- Added TLS support to the edged
- Fixed a few issues with the P2P overlay
- Improved content syncing
- Docker images for every service
- Updated readmes to reflect docker changes
- Better logging
- New CLI command for unlocking wallet
0.7.2 - Jan 1, 2019
This release addresses/adds:
- Legion memory leaks
- Streamlined build system
- Added preliminary docker support
0.7.1 - Dec 18, 2018
- Fixes a memory leak in Legion that would cause crashes on some machines
- Removes
about application
menu - Tray icon in Windows
0.7.0 - Nov 30, 2018
Changelog
Gladius Guardian service manager
- Keeps track of Gladius services and makes it easy to start and stop as well as get logs
- Simple REST API interface for management
- Rebuilt P2P stack from the ground up using our own library Legion
Gladius Legion
- Easy to use and extremely flexible api for any developer to build their own distributed applications in Go
- GitHub read more features here
Overhauled UI
- Added entire status page to manage services, view real time logs, and monitor the state of your node
- Added version management so you can see when a new version is ready to be installed
- Fixed balance checking
- General improvements in reliability and usability
Redesigned config system
- Config files are consistent across all of the Gladius modules
- Config files missing sections will no longer be considered invalid
Master Node
- Rewritten in C++
- The masternode has been ported from Go to C++ to squeeze the maximum performance we can out of the hardware we run on.
- Migrated our content delivery from an inline Javascript solution to a more elegant browser service worker (in future will allow for much faster loading through web assembly, compression, and interesting distributed applications)
- Entire build system has been dockerized to make it much easier to develop across multiple platforms and systems
- Renamed and refactored services to make development and contributions easier
Renaming
- Networkd -> Edged
- Controld -> Network Gateway
Building
- Build process now clones repositories and calls their internal makefile to build and test
- Broke out all common code into a new package called Gladius Common
- All new build pipeline so releases are easier to create and distribute
macOS Application
- Supports native service management
- Improved menu bar item support
- Wallet password can be stored in macOS keychain
Other
- Fixed issues with windows services not starting
- Fixed windows icon not appearing
- Improved windows installer
- Issues binding to separate interfaces in Linux has been fixed
- Migrated GladiusBase from .config/gladius to .gladius on macOS and Linux
- General bug fixes and usability improvements
- Added experimental UPNP support the the Network Gateway
- Updated CLI to support changes in the Network Gateway
0.6.2 - Sep 13, 2018
Changes
- Fixes UI bugs that prevent applying to the Gladius Pool
- Other general electron bug fixes