DeepDive installation guide
DeepDive runs on macOS, Linux, and in Docker containers. This document explains how to install or launch DeepDive on your system.
Launch without installing
We provide Docker images and Docker Compose configuration to just launch and use DeepDive.
Make sure you have Docker Compose installed. (If Docker does not work for you, then try quick installation below. If you lack system administration rights, then try the
deepdive_from_release
option.)Open your terminal and run this:
bash <(curl -fsSL git.io/getdeepdive)
Select
deepdive_docker_sandbox
when asked.### DeepDive installer for Mac 1) deepdive 5) jupyter_notebook 2) deepdive_docker_sandbox 6) postgres 3) deepdive_example_notebook 7) run_deepdive_tests 4) deepdive_from_release 8) spouse_example # Install what (enter to repeat options, a to see all, q to quit, or a number)? 2 [...]
It launches a DeepDive container along with a Postgres database container we tweaked for DeepDive.
Point your web browser to the tutorial notebook or a terminal.
Data Persistency
Here are a few IMPORTANT things to keep in mind about data:
All data in the database is kept under
deepdive-*/sandbox/database/
on the host, so you can find it on subsequent launches.To exchange files between host and container, use the
deepdive-*/sandbox/workdir/
on host, which is mounted on/ConfinedWater/workdir/
in the container.WARNING!!! Changes to everything else in the container, including files under
deepdive-examples/
, disappear when you shut down the Docker Compose, e.g., withdocker-compose down
.
Quick installation
We provide a simple installation method for the following supported systems:
- GNU/Linux: Debian (7, 8, or later) and Ubuntu (12.04LTS, 14.04LTS, 16.04LTS, or later)
- macOS with Homebrew
You can install DeepDive and all its dependencies with a single command.
Open your terminal and run this:
bash <(curl -fsSL git.io/getdeepdive)
Select
deepdive
ordeepdive_from_release
when asked. Choose the latter option if you simply want to install DeepDive without any of its runtime dependencies.### DeepDive installer for Mac 1) deepdive 5) jupyter_notebook 2) deepdive_docker_sandbox 6) postgres 3) deepdive_example_notebook 7) run_deepdive_tests 4) deepdive_from_release 8) spouse_example # Install what (enter to repeat options, a to see all, q to quit, or a number)? 1 [...]
Here are some more details of each options:
- For installation with the
deepdive
option, All runtime dependencies are installed. Note that some steps may ask your password. If you don't have permission to install the dependencies, you may want to use the
deepdive_from_release
option and ask the system administrator to install DeepDive's runtime dependencies with the following command.bash <(curl -fsSL git.io/getdeepdive) _deepdive_runtime_deps
- For installation with the
* For installation with `deepdive_from_source` option, extra build dependencies are installed, and DeepDive source tree is cloned at `./deepdive`, then executables are installed under `~/local/bin/`.
You can run tests in DeepDive's source tree to make sure everything will run fine.
See the [developer's guide](developer#build-test) for more details.
```bash
cd ./deepdive
make test
```
To use the
deepdive
command on a regular basis, it is recommended to add the following line to your~/.bash_profile
. Otherwise, you need to always type its full path:~/local/bin/deepdive
.export PATH=~/local/bin:"$PATH"
Since DeepDive needs a database installation to run correctly. You should use one of the provided installer options:
postgres
DeepDive works with most of the recent versions of PostgreSQL. However, 9.3+ is recommended to use all functionality.postgres_xl
DeepDive works with current release of PostgreSQL-XL, which is based on PostgreSQL 9.2. PL/Python extension is required.greenplum
DeepDive works with recent releases of Greenplum, which is based on PostgreSQL 8 that may lack some features that are required by some advanced DeepDive functionality. PL/Python extension is required.mysql
DeepDive provides minimal support for MySQL and MySQL Cluster, but PostgreSQL-based databases are strongly recommended.
You can verify whether your installation is correct using the
run_deepdive_tests
option in the installer. It downloads all examples and tests for the DeepDive release and runs the tests using the installed one. To only download the example applications, use thedeepdive_examples_tests
option.
Congratulations! DeepDive is now installed on your system, and you can proceed to the next steps.
Installing from source
Using the quick installation method is recommended unless you want to use a development branch or modify DeepDive engine itself. If you still want to build DeepDive from source code yourself, follow the developer's guide.