Getting Started
The fidesops repository includes a built-in docker compose configuration for quickly experimenting with a working demo environment.
For a more detailed guide on fidesops, the tutorial provides an in-depth introduction, and a full installation guide is available for production deployments.
Requirements
- Docker 12+
- Python 3.8+
Build from the fidesops repo
Ensure nothing is running on ports 8080
, 5432
, or 6379
prior to these steps.
-
Clone the fidesops repository.
-
Run
docker compose up
from the root of the fidesops project directory. The provideddocker-compose.yml
will create the necessary databases and spin up the server. -
Visit
http://0.0.0.0:8080/health
in your browser. A response of{"webserver": "healthy", "database": "healthy", "cache": "healthy"}
indicates a successful deployment.
Build from your project
Note
The provided docker instructions are intended only for experimenting in development environments. For production installations, see the deployment guides.
Ensure nothing is running on ports 8080
, 5432
, or 6379
prior to these steps.
-
To replicate the demo environment in your own project, create a
docker-compose.yml
file like the example below in your application's root directory.docker-compose.yml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
services: fidesops: image: ethyca/fidesops container_name: fidesops depends_on: - db - redis expose: - 8080 healthcheck: test: ["CMD", "curl", "-f", "http://0.0.0.0:8080/health"] interval: 30s timeout: 10s retries: 3 start_period: 1s ports: - "8080:8080" volumes: - type: bind source: ./ target: /fidesops #Update this to the path of your project directory read_only: False db: image: postgres:12 volumes: - app-db-data:/var/lib/postgresql/data/pgdata environment: - PGDATA=/var/lib/postgresql/data/pgdata - POSTGRES_USER=postgres - POSTGRES_PASSWORD=216f4b49bea5da4f84f05288258471852c3e325cd336821097e1e65ff92b528a - POSTGRES_DB=app expose: - 5432 ports: - "0.0.0.0:5432:5432" deploy: placement: constraints: - node.labels.fidesops.app-db-data == true redis: image: "redis:6.2.5-alpine" command: redis-server --requirepass testpassword environment: - REDIS_PASSWORD=testpassword expose: - 6379 ports: - "0.0.0.0:6379:6379" volumes: app-db-data:
-
Ensure Docker is running, and run
docker compose up
from the project's root directory. This will pull the latest fidesops Docker image, create the sample databases, and start the server. -
Visit
http://0.0.0.0:8080/health
in your browser. A response of{"webserver": "healthy", "database": "healthy", "cache": "healthy"}
indicates a successful deployment.