Skip to content
cyan edited this page Jun 16, 2021 · 3 revisions

Setup abstruse

You can download prebuilt binaries from releases tab, or build abstruse directly from source:

Building from source

You need to execute following command (on debian) to get all the packages required for abstruse to work. If you are running on debian stable, install golang from golang.org/doc/install - to make sure that the version is not outdated. Same apply to node.js install it from nodesource

# apt install git make gcc protobuf-compiler -y
$ git clone https://github.com/bleenco/abstruse
$ cd abstruse
$ make install_dependencies
$ make

in build/ directory you will have abstruse-server and abstruse-worker.

Configuring

Configuring can be done from env variables or flags. I'd recommend environment variables, because command running on host can be read easily: htop in action

Let's create some simple script that will run a server and a runner

JWTSECRET=change9

ABSTRUSE_HTTP_ADDR=0.0.0.0:8080 \
ABSTRUSE_AUTH_JWTSECRET=$JWTSECRET \
ABSTRUSE_DB_DRIVER=sqlite3 \
ABSTRUSE_LOGGER_LEVEL=debug \
./abstruse-server &
disown $!

ABSTRUSE_GRPC_ADDR=0.0.0.0:3330 \
ABSTRUSE_AUTH_JWTSECRET=$JWTSECRET \
ABSTRUSE_SERVER_ADDR=http://127.0.0.1:8080 \
ABSTRUSE_SCHEDULER_MAXPARALLEL=4 \
./abstruse-worker &
disown $!

If you wish to use MySQL change ABSTRUSE_DB_DRIVER to mysql and add these variables:

ABSTRUSE_DB_HOST=localhost \
ABSTRUSE_DB_PORT=3306 \
ABSTRUSE_DB_PASSWORD=mydbpassword \

note: Make sure that ./abstruse-worker and ./abstruse-server are in the same directory, and have executable permissions (chmod +x)

Configuring part 2

Then, after abstruse is running you can go to 127.0.0.1:8080 and finish setup.

user account

Viola! It all should work now!

Clone this wiki locally