Fluree ledger requires Java 11 or later.
Download the latest or stable release from https://flur.ee/getstarted/ and follow the instructions there.
A Docker image is available from the Docker Hub. It is named fluree/ledger
.
Kubernetes support is in the k8s/
subdirectory of this project. You can
deploy Fluree to a k8s cluster running Kubernetes 1.18+ with a default storage
class configured by applying the YAML files in the k8s/
directory:
kubectl apply -f k8s
Fluree Ledger source code is licensed under AGPL. What if AGPL is a problem for your organization?
fluree/ledger runs as an independent service, so there really is no need to include or modify Fluree Ledger code, which is what would trigger AGPL restrictions. This differs from fluree/db which is designed to be included with your code as a library - and for that reason is licensed under EPL.
If you want to run fluree/ledger under a different license, that is easy to solve by using a precompiled version of the code (AGPL only covers the source code distribution). Easiest way to do that is download it here, and it will be covered by our standard customer license agreement terms.
Does your organization not allow free software at all? Contact us for a commercial license.
All contributors must complete a Contributor License Agreement.
- Install clojure tools-deps (version 1.10.2.774 or later).
- macOS:
brew install clojure/tools/clojure
- Arch Linux:
pacman -S clojure
- macOS:
- Install NodeJS & npm
- macOS:
brew install node
- macOS:
If you're hacking on the adminUI, open package.json
and change the version
that @fluree/admin-ui
is pointed at to file:../admin-ui
(or wherever your
local copy of fluree-admin-ui is cloned).
Then do make clean
followed by make run
.
While actively hacking on the adminUI, it probably makes more sense to run it separately with its change-watcher turned on. Then you can run the above once you're ready to test integration of the production build.
You can run the entire test suite like this:
make test
Or you can select which tests you'd like to run by invoking the test runner like this:
clojure -X:test
...followed by any of the filters / selectors described here.
For example, to run only the tests in the fluree.db.ledger.api.open-test
namespace, you can do this:
clojure -X:test :nses '[fluree.db.ledger.api.open-test]
- Set the version you want in
deps.edn
(in the:mvn/version
alias) - Run
make
This will generate build/fluree-$(VERSION).zip
.
Its contents will also be left in the build/
directory for manual testing
(e.g. cd build && ./fluree_start.sh
).
make install
will install fluree to /usr/local
(by default) and you can then run
fluree
to start it up. Config files fluree.properties
and fluree-logback.xml
will
be copied to /usr/local/etc
if they don't already exist. You can modify them to your
needs.
If you want to install somewhere other than /usr/local
you can set the DESTDIR
variable
like this: make install DESTDIR=/other/path
. Fluree will then be installed to /other/path/bin
,
/other/path/etc
, & /other/path/share/java
.