Skip to content

Latest commit

 

History

History
131 lines (85 loc) · 3.48 KB

INSTALLATION.md

File metadata and controls

131 lines (85 loc) · 3.48 KB

Installing Databunker

Just run from the Docker container

This is the easiest method to start with Data Bunker. Always use the latest version.

You can fetch and start Databunker with the following command:

cd ~
mkdir -p data
docker run -v ~/data:/databunker/data -p 3000:3000 \
  --rm --name dbunker paranoidguy/databunker

This command will init Databunker service, init database and start container.

This command will print DATABUNKER_MASTERKEY and DATABUNKER_ROOTTOKEN.

You can run: docker logs dbunker to view these codes.

The database will be init in the ~/data directory.

DATABUNKER_MASTERKEY is used to encrypt database records.

DATABUNKER_ROOTTOKEN is an access token to databunker API.

Stop service

To stop Databunker container you can run the following command:

docker kill dbunker

Run it again

You can run it again, after it was initalized. Use the following command:

docker run -p 3000:3000 -v ~/data:/databunker/data \
  -e "DATABUNKER_MASTERKEY=**DATABUNKER_MASTERKEY**" \
  --rm --name dbunker paranoidguy/databunker

Custom configuration

Databunker has a configuration file that you can alter to enable custom email gateway, notification urls, twilio account (sms gateway), etc...

There are number of ways you can change configuration file in container, for example by creating your own Docker file. Another option is to create this file outside of container in conf/ directory and mount this directory in container.

You can do it as following:

  1. Download default configuration file and place it in ~/conf/ directory.
mkdir ~/conf
curl https://raw.githubusercontent.com/paranoidguy/databunker/master/databunker.yaml \ 
  -o ~/conf/databunker.yaml
  1. After that you can alter the configuration file with your editor: ~/conf/databunker.yaml

  2. Run container and mount ~/conf/ directory:

docker run -p 3000:3000 -v ~/data:/databunker/data -v ~/conf:/databunker/conf \
  -e "DATABUNKER_MASTERKEY=**DATABUNKER_MASTERKEY**" \
  --rm --name dbunker paranoidguy/databunker

SSL certificates

You can generate SSL certificates and place them in the /databunker/certs directory in the running container.

For example you can do this by mounting /databunker/certs to a local ~/certs/ directory as:

cd ~
mkdir -p certs
# generate certificates, check bellow
docker run -p 3000:3000 -v ~/data:/databunker/data \
  -v ~/certs:/databunker/certs \
  -e "DATABUNKER_MASTERKEY=**DATABUNKER_MASTERKEY**" \
  --rm --name dbunker paranoidguy/databunker

So, you need to prepare server.crt and server.key files.

Generate self-signed certificates

You can do the following command to generate one:

cd ~
mkdir -p certs
cd certs
openssl req -new -newkey rsa:4096 -days 365 -nodes -x509 \
    -subj "/C=UK/ST=/L=London/O=Your-company Ltd./CN=databunker.your-company.com" \
    -keyout server.key -out server.crt

Use certificates generated by letsencrypt

Copy letsencrypt file privkey.pem to ~/certs/server.key

Copy letsencrypt file fullchain.pem file to ~/certs/server.crt

Create a test record

You can download and run a small test script that will create a user record, user app record, user consent, etc...

curl https://raw.githubusercontent.com/paranoidguy/databunker/master/create-test-user.sh -o test.sh
chmod 755 ./test.sh
./test.sh **DATABUNKER_MASTERKEY**

You can now open browser at http://localhost:3000/

Use the following account details:

Email: test@paranoidguy.com

Phone: 4444

Code: 4444