2021-08-01 14:27:44 -07:00
---
description: >-
This installation doc will help you start a OpenMetadata standalone instance
on your local machine.
---
2021-08-12 20:59:34 +00:00
# Run OpenMetadata
2021-12-19 19:30:55 +01:00
## Requirements (OSX and Linux)
2021-11-22 17:08:02 +00:00
Please ensure your host system meets the requirements listed below. Then continue to the Procedure for installing OpenMetadata.
### Python (version 3.8.0 or greater)
To check what version of Python you have, please use the following command.
```
python3 --version
```
### Docker (version 20.10.0 or greater)
2021-08-12 11:39:56 -07:00
[Docker ](https://docs.docker.com/get-started/overview/ ) is an open platform for developing, shipping, and running applications that enables you to separate your applications from your infrastructure so you can deliver software quickly using OS-level virtualization to deliver software in packages called containers.
2021-11-22 17:08:02 +00:00
To check what version of Docker you have, please use the following command.
```
docker --version
```
2022-01-19 17:23:09 -05:00
If you need to install Docker, please visit [Get Docker ](https://docs.docker.com/get-docker/ ). You also need the latest `docker-compose` installed, please visit [Install Docker Compose ](https://docs.docker.com/compose/install/ ).
2021-08-12 11:39:56 -07:00
2021-11-22 17:08:02 +00:00
{% hint style="warning" %}
Note: You must **allocate at least 4GB of memory to Docker** in order to run OpenMetadata. To change the memory allocation for Docker, please visit:
Preferences -> Resources -> Advanced
2021-08-12 11:39:56 -07:00
{% endhint %}
2021-11-22 17:08:02 +00:00
## Procedure
### 1. Create a directory for OpenMetadata
Create a new directory for OpenMetadata and navigate into that directory.
```
2021-12-19 19:30:55 +01:00
mkdir openmetadata-docker & & cd openmetadata-docker
2021-08-12 11:39:56 -07:00
```
2021-11-22 17:08:02 +00:00
### 2. Create a Python virtual environment
2021-08-16 17:54:02 +00:00
2021-11-22 17:08:02 +00:00
Create a virtual environment to avoid conflicts with other Python environments on your host system. A virtual environment is a self-contained directory tree that contains a Python installation for a particular version of Python, plus a number of additional packages.
2021-08-16 17:54:02 +00:00
2021-11-22 17:08:02 +00:00
In a later step you will install the openmetadata-ingestion Python module and its dependencies in this virtual environment.
2021-08-13 11:24:31 -07:00
2021-11-22 17:08:02 +00:00
```
python3 -m venv env
```
2021-08-13 11:24:31 -07:00
2021-11-22 17:08:02 +00:00
### 3. Activate the virtual environment
2021-08-13 11:24:31 -07:00
2021-11-22 17:08:02 +00:00
```
source env/bin/activate
```
2021-08-13 11:24:31 -07:00
2022-01-05 15:44:03 +00:00
### 4. Upgrade pip and setuptools
2021-12-19 19:30:55 +01:00
```
2021-12-21 20:05:39 +01:00
pip3 install --upgrade pip setuptools
2021-12-19 19:30:55 +01:00
```
2022-01-05 15:44:03 +00:00
### 5. Install the OpenMetadata Python module using pip
2021-11-13 23:03:20 +05:30
2021-12-19 19:30:55 +01:00
```
pip3 install --upgrade 'openmetadata-ingestion[docker]'
2021-11-22 17:08:02 +00:00
```
2021-11-13 23:03:20 +05:30
2022-01-05 15:44:03 +00:00
### 6. Ensure the module is installed and ready for use
2021-11-13 23:03:20 +05:30
2021-11-22 17:08:02 +00:00
```
metadata docker --help
```
2021-11-13 23:03:20 +05:30
2021-11-22 17:08:02 +00:00
After running the command above, you should see output similar to the following.
2021-11-13 23:03:20 +05:30
2021-11-22 17:08:02 +00:00
```
Usage: metadata docker [OPTIONS]
Checks Docker Memory Allocation Run Latest Release Docker - metadata
docker --run Run Local Docker - metadata docker --run -t local -p
path/to/docker-compose.yml
Options:
--start Start release Docker containers
--stop Stop Docker containers (local and release)
--clean Prune unused containers, images, volumes and networks
-t, --type TEXT 'local' - local type will start local build of OpenMetadata
docker
2021-11-13 23:03:20 +05:30
2021-11-22 17:08:02 +00:00
-p, --path FILE Path to Local docker-compose.yml
--help Show this message and exit.
2021-11-13 23:03:20 +05:30
```
2021-11-22 17:08:02 +00:00
2022-01-05 15:44:03 +00:00
### 7. Start the OpenMetadata Docker containers
2021-11-22 17:08:02 +00:00
```
metadata docker --start
2021-11-13 23:03:20 +05:30
```
2021-08-13 11:24:31 -07:00
2021-11-22 17:08:02 +00:00
This will create a docker network and four containers for the following services:
2021-08-01 14:27:44 -07:00
2021-11-22 17:08:02 +00:00
* MySQL to store the metadata catalog
* Elasticsearch to maintain the metadata index which enables you to search the catalog
* Apache Airflow which OpenMetadata uses for metadata ingestion
* The OpenMetadata UI and API server
2021-08-01 14:27:44 -07:00
2021-11-22 17:08:02 +00:00
After starting the Docker containers, you should see output similar to the following.
2021-08-01 14:27:44 -07:00
2021-11-22 17:08:02 +00:00
```
[2021-11-18 15:53:52,532] INFO {metadata.cmd:202} - Running Latest Release Docker
[+] Running 5/5
⠿ Network tmp_app_net Created 0.3s
⠿ Container tmp_mysql_1 Started 1.0s
⠿ Container tmp_elasticsearch_1 Started 1.0s
⠿ Container tmp_ingestion_1 Started 2.1s
⠿ Container tmp_openmetadata-server_1 Started 2.2s
[2021-11-18 15:53:55,876] INFO {metadata.cmd:212} - Time took to get containers running: 0:00:03.124889
.......
```
After starting the containers, `metadata` will launch Airflow tasks to ingest sample metadata and usage data for you to experiment with. This might take several minutes, depending on your system.
2021-08-01 14:27:44 -07:00
{% hint style="info" %}
2021-11-22 17:08:02 +00:00
**Note:**
2021-08-01 14:27:44 -07:00
2021-11-22 17:08:02 +00:00
* `metadata docker --stop` will stop the Docker containers.
* `metadata docker --clean` will clean/prune the containers, volumes, and networks.
2021-08-01 14:27:44 -07:00
{% endhint %}
2022-01-05 15:44:03 +00:00
### 8. Wait for metadata ingestion to finish
2021-08-12 11:39:56 -07:00
2021-12-21 20:05:39 +01:00
Once metadata ingestion has finished and the OpenMetadata UI is ready for use, you will see output similar to the following.
2021-11-22 17:08:02 +00:00
```
[2021-11-18 15:54:51,165] INFO {metadata.cmd:232} - Time took to get OpenMetadata running: 0:00:58.414548
2021-08-12 11:39:56 -07:00
2021-11-22 17:08:02 +00:00
✔ OpenMetadata is up and running
Head to http://localhost:8585 to play around with OpenMetadata UI.
To checkout Ingestion via Airflow, go to http://localhost:8080
(username: admin, password: admin)
Need support? Get in touch on Slack: https://slack.open-metadata.org/
2021-08-01 14:27:44 -07:00
```
2022-01-05 15:44:03 +00:00
### 9. Log in to Airflow
2021-11-22 17:08:02 +00:00
Once metadata ingestion has finished and you see the message that OpenMetadata is up and running, visit the following url in your web browser.
2021-08-01 14:27:44 -07:00
2021-11-22 17:08:02 +00:00
```
http://localhost:8080
```
2021-08-01 14:27:44 -07:00
2021-11-22 17:08:02 +00:00
You will see a login prompt similar to the one in the figure below. Use the following credentials to log in to Airflow.
2021-10-15 03:51:13 +05:30
2021-12-21 20:05:39 +01:00
Username: `admin`
2021-10-15 03:51:13 +05:30
2021-11-22 17:08:02 +00:00
Password: `admin`
2021-10-15 03:51:13 +05:30
2021-11-22 17:08:02 +00:00

2021-10-15 03:51:13 +05:30
2022-01-05 15:44:03 +00:00
### 10. Begin using OpenMetadata
2021-11-22 17:08:02 +00:00
Finally, visit the following url to begin exploring OpenMetadata.
```
http://localhost:8585
```
You should see a page similar to the following as the landing page for the OpenMetadata server.

### Next Steps
1. Visit the [Features ](../features.md ) overview page and explore the OpenMetadata UI.
2. Visit the [Connectors ](metadata-ingestion/connectors/ ) documentation to see what services you can integrate with OpenMetadata.
3. Visit the [API ](../openmetadata-apis/apis/overview.md ) documentation and explore the OpenMetadata APIs.
### Troubleshooting
#### Could not find a version that satisfied the requirement
```
pip3 install 'openmetadata-ingestion[docker]'
ERROR: Could not find a version that satisfies the requirement openmetadata-ingestion[docker] (from versions: none)
ERROR: No matching distribution found for openmetadata-ingestion[docker]
```
2021-12-21 20:05:39 +01:00
If you see the above when attempting to install OpenMetadata, this can be due to using older version of Python and pip. Please check the [Requirements ](run-openmetadata.md#requirements ) section above and confirm that you have supported versions installed.
2021-08-13 11:24:31 -07:00
2021-12-21 20:05:39 +01:00
If you need support please get in touch on Slack: [https://slack.open-metadata.org/ ](https://slack.open-metadata.org ).
2021-12-19 19:30:55 +01:00
## Requirements (Windows)
### WSL2, Ubuntu 20.04, and Docker for Windows
2021-12-21 20:05:39 +01:00
2021-12-19 19:30:55 +01:00
1. Install [WSL2 ](https://ubuntu.com/wsl )
2021-12-21 20:05:39 +01:00
2. Install [Ubuntu 20.04 ](https://www.microsoft.com/en-us/p/ubuntu-2004-lts/9n6svws3rx71 )
2021-12-19 19:30:55 +01:00
3. Install [Docker for Windows ](https://www.docker.com/products/docker-desktop )
### In the Ubuntu terminal
```
cd ~
sudo apt update
sudo apt upgrade
sudo apt install python3-pip python3-venv
```
2021-12-21 20:05:39 +01:00
Follow the [OSX instructions ](run-openmetadata.md#1.-create-a-directory-for-openmetadata )