Skip to main content

Install self-hosted Piiano Vault server from a pre-built Docker container

Learn how to install a self-hosted Piiano Vault editions, from a pre-built, publicly available Docker images.

Prerequisites

  1. Register for a free 30-days license to activate Vault.

Dev

Dev edition is a standalone, single-container Vault package. Its main purpose is to enable you to experiment, test, and develop. It is not intended for use in production. See Dev edition for more details.

Run with Docker

To start the Dev edition, use this command:

docker run --rm \
--name pvault-dev \
-p 8123:8123 \
-e PVAULT_DEVMODE=true \
-e PVAULT_SERVICE_LICENSE={LICENSE_KEY} \
-d \
piiano/pvault-dev:1.0.0

You can gain a performance boost by running completely in memory (e.g. during development or CI/CD).
Add the following parameters to the docker run command listed above:

--mount type=tmpfs,destination=/var/lib/postgresql/data

More details at: https://docs.docker.com/storage/tmpfs/

Server

Server edition is a single container Vault package, to be used with an external database. See Server edition for more details.

To run the Server edition, use one of these options.

Run with Docker

Server edition needs a Postgres server running. You start a Postgres container with this command:

docker run -p 5432:5432 \
--name pvault-db \
-e POSTGRES_DB=pvault \
-e POSTGRES_USER=pvault \
-e POSTGRES_PASSWORD=pvault \
-d \
postgres:13.5

To start Vault, use this command:

docker run --rm \
--name pvault-server \
-p 8123:8123 \
-e PVAULT_DB_HOSTNAME=172.17.0.1 \
-e PVAULT_DEVMODE=true \
-e PVAULT_SERVICE_LICENSE={LICENSE_KEY} \
-d \
piiano/pvault-server:1.0.0

Vault's settings are changed using environment variables. These variables include the database connection settings such as user and password. Make sure that the connection settings match those of the database. See the configuration page for more information.

You can also use the pvault.system.toml and pvault.iam.toml files to configure Vault. To do this, mount the directory containing the custom toml files to the container's /etc/pvault path. For example: -v $(pwd):/etc/pvault.

Run with Docker Compose

Download docker-compose.yaml and configuration files, and run docker-compose up:

curl https://piiano.com/docs/assets/pvault_server.tar.gz | tar -xzf - && docker-compose up -d > /dev/null

Use the .env file to configure Vault. See the configuration page for more information.

To change the default configuration or run in a different directory, download and extract pvault_server.tar.gz to obtain the docker-compose.yaml and .env configuration files.

Note: to successfully run Vault, you will need to provide the license in the PVAULT_SERVICE_LICENSE environment variable.

ServerX

ServerX edition is a multi-container Vault package. It is designed for implementations where maximum scalability with network segregation is required. See ServerX edition for more details.

To run the ServerX edition, use one of these options.

Run with Docker Compose

Download docker-compose.yaml and configuration files, and run docker-compose up:

curl https://piiano.com/docs/assets/pvault_serverx.tar.gz | tar -xzf - && docker-compose up -d > /dev/null

Vault is configured using the .env file. See the configuration page for more information.

To change the default configuration or run in a different directory, download and extract pvault_serverx.tar.gz to obtain the docker-compose.yaml and .env configuration files.

Note: to successfully run Vault, you need to provide the license in the PVAULT_SERVICE_LICENSE environment variable.

Next steps

  • Now that you have your Piiano Vault server up and running, you can Follow our step-by-step guide, and find out what you can do with it.
  • You can always contact us if you need help working something out, or if you want to have a chat.