From 3728fa635bcd9ebdecf08906877420ff8ea7b9d6 Mon Sep 17 00:00:00 2001 From: Vj-L <102945356+Vj-L@users.noreply.github.com> Date: Thu, 11 Aug 2022 12:12:14 +0530 Subject: [PATCH] Added docker-compose file for postgressql (#6695) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: “Vijay” <“vijay.l@deuexsolutions.com”> --- docker/metadata/docker-compos-postgres.yml | 151 +++++++++++++++++++++ 1 file changed, 151 insertions(+) create mode 100644 docker/metadata/docker-compos-postgres.yml diff --git a/docker/metadata/docker-compos-postgres.yml b/docker/metadata/docker-compos-postgres.yml new file mode 100644 index 00000000000..4cd69a92caa --- /dev/null +++ b/docker/metadata/docker-compos-postgres.yml @@ -0,0 +1,151 @@ +# Copyright 2021 Collate +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# http://www.apache.org/licenses/LICENSE-2.0 +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +version: "3.9" +volumes: + ingestion-volume-dag-airflow: + ingestion-volume-dags: + ingestion-volume-tmp: +services: + postgressql: + container_name: openmetadata_postgressql + image: openmetadata/postgressql:0.11.4 + restart: always + environment: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: password + expose: + - 5432 + networks: + app_net: + ipv4_address: 172.16.240.10 + + elasticsearch: + container_name: openmetadata_elasticsearch + image: docker.elastic.co/elasticsearch/elasticsearch:7.10.2 + environment: + - discovery.type=single-node + - ES_JAVA_OPTS=-Xms1024m -Xmx1024m + + networks: + app_net: + ipv4_address: 172.16.240.11 + ports: + - 9200:9200 + - 9300:9300 + + openmetadata-server: + container_name: openmetadata_server + restart: always + image: openmetadata/server:0.11.4 + environment: + ELASTICSEARCH_HOST: elasticsearch + # OpenMetadata Server Authentication Configuration + AUTHORIZER_CLASS_NAME: ${AUTHORIZER_CLASS_NAME:-org.openmetadata.catalog.security.NoopAuthorizer} + AUTHORIZER_REQUEST_FILTER: ${AUTHORIZER_REQUEST_FILTER:-org.openmetadata.catalog.security.NoopFilter} + AUTHORIZER_ADMIN_PRINCIPALS: ${AUTHORIZER_ADMIN_PRINCIPALS:-[admin]} + AUTHORIZER_INGESTION_PRINCIPALS: ${AUTHORIZER_INGESTION_PRINCIPALS:-[ingestion-bot]} + AUTHORIZER_PRINCIPAL_DOMAIN: ${AUTHORIZER_PRINCIPAL_DOMAIN:-""} + AUTHORIZER_ENFORCE_PRINCIPAL_DOMAIN: ${AUTHORIZER_ENFORCE_PRINCIPAL_DOMAIN:-false} + AUTHORIZER_ENABLE_SECURE_SOCKET: ${AUTHORIZER_ENABLE_SECURE_SOCKET:-false} + AUTHENTICATION_PROVIDER: ${AUTHENTICATION_PROVIDER:-no-auth} + CUSTOM_OIDC_AUTHENTICATION_PROVIDER_NAME: ${CUSTOM_OIDC_AUTHENTICATION_PROVIDER_NAME:-""} + AUTHENTICATION_PUBLIC_KEYS: ${AUTHENTICATION_PUBLIC_KEYS:-[https://www.googleapis.com/oauth2/v3/certs]} + AUTHENTICATION_AUTHORITY: ${AUTHENTICATION_AUTHORITY:-https://accounts.google.com} + AUTHENTICATION_CLIENT_ID: ${AUTHENTICATION_CLIENT_ID:-""} + AUTHENTICATION_CALLBACK_URL: ${AUTHENTICATION_CALLBACK_URL:-""} + AUTHENTICATION_JWT_PRINCIPAL_CLAIMS: ${AUTHENTICATION_JWT_PRINCIPAL_CLAIMS:-[email,preferred_username,sub]} + # OpenMetadata Server Airflow Configuration + AIRFLOW_HOST: ${AIRFLOW_HOST:-http://ingestion:8080} + SERVER_HOST_API_URL: ${SERVER_HOST_API_URL:-http://localhost:8585/api} + # OpenMetadata Airflow Azure SSO Configuration + AIRFLOW_AUTH_PROVIDER: ${AIRFLOW_AUTH_PROVIDER:-no-auth} + OM_AUTH_AIRFLOW_AZURE_CLIENT_SECRET: ${OM_AUTH_AIRFLOW_AZURE_CLIENT_SECRET:-""} + OM_AUTH_AIRFLOW_AZURE_AUTHORITY_URL: ${OM_AUTH_AIRFLOW_AZURE_AUTHORITY_URL:-""} + OM_AUTH_AIRFLOW_AZURE_SCOPES: ${OM_AUTH_AIRFLOW_AZURE_SCOPES:-[]} + OM_AUTH_AIRFLOW_AZURE_CLIENT_ID: ${OM_AUTH_AIRFLOW_AZURE_CLIENT_ID:-""} + # OpenMetadata Airflow Google SSO Configuration + OM_AUTH_AIRFLOW_GOOGLE_SECRET_KEY_PATH: ${OM_AUTH_AIRFLOW_GOOGLE_SECRET_KEY_PATH:- ""} + OM_AUTH_AIRFLOW_GOOGLE_AUDIENCE: ${OM_AUTH_AIRFLOW_GOOGLE_AUDIENCE:-"https://www.googleapis.com/oauth2/v4/token"} + # OpenMetadata Airflow Okta SSO Configuration + OM_AUTH_AIRFLOW_OKTA_CLIENT_ID: ${OM_AUTH_AIRFLOW_OKTA_CLIENT_ID:-""} + OM_AUTH_AIRFLOW_OKTA_ORGANIZATION_URL: ${OM_AUTH_AIRFLOW_OKTA_ORGANIZATION_URL:-""} + OM_AUTH_AIRFLOW_OKTA_PRIVATE_KEY: ${OM_AUTH_AIRFLOW_OKTA_PRIVATE_KEY:-""} + OM_AUTH_AIRFLOW_OKTA_SA_EMAIL: ${OM_AUTH_AIRFLOW_OKTA_SA_EMAIL:-""} + OM_AUTH_AIRFLOW_OKTA_SCOPES: ${OM_AUTH_AIRFLOW_OKTA_SCOPES:-[]} + # OpenMetadata Airflow Auth0 SSO Configuration + OM_AUTH_AIRFLOW_AUTH0_CLIENT_ID: ${OM_AUTH_AIRFLOW_AUTH0_CLIENT_ID:-""} + OM_AUTH_AIRFLOW_AUTH0_CLIENT_SECRET: ${OM_AUTH_AIRFLOW_AUTH0_CLIENT_SECRET:-""} + OM_AUTH_AIRFLOW_AUTH0_DOMAIN_URL: ${OM_AUTH_AIRFLOW_AUTH0_DOMAIN_URL:-""} + # OpenMetadata Airflow Custom OIDC SSO Configuration + OM_AUTH_AIRFLOW_CUSTOM_OIDC_CLIENT_ID: ${OM_AUTH_AIRFLOW_CUSTOM_OIDC_CLIENT_ID:-""} + OM_AUTH_AIRFLOW_CUSTOM_OIDC_SECRET_KEY: ${OM_AUTH_AIRFLOW_CUSTOM_OIDC_SECRET_KEY:-""} + OM_AUTH_AIRFLOW_CUSTOM_OIDC_TOKEN_ENDPOINT_URL: ${OM_AUTH_AIRFLOW_CUSTOM_OIDC_TOKEN_ENDPOINT_URL:-""} + #Database configuration for Postgressql + DB_DRIVER_CLASS: ${DB_DRIVER_CLASS:-org.postgresql.Driver} + DB_SCHEME: ${DB_SCHEME:-postgresql} + DB_USE_SSL: ${DB_USE_SSL:-false} + DB_USER: ${DB_USER:-openmetadata_user} + DB_USER_PASSWORD: ${DB_USER_PASSWORD:-openmetadata_password} + DB_HOST: ${DB_HOST:-postgres} + DB_PORT: ${DB_PORT:-5432} + OM_DATABASE: ${OM_DATABASE:-openmetadata_db} + expose: + - 8585 + - 8586 + - 9200 + - 9300 + - 5432 + ports: + - 8585:8585 + - 8586:8586 + depends_on: + - postgressql + networks: + app_net: + ipv4_address: 172.16.240.13 + extra_hosts: + - "postgres:172.16.240.10" + - "elasticsearch:172.16.240.11" + + ingestion: + container_name: openmetadata_ingestion + image: openmetadata/ingestion:0.11.4 + depends_on: + - potgressql + environment: + DB_HOST: ${DB_HOST:-postgres} + DB_PORT: ${DB_PORT:-5432} + AIRFLOW_DB: ${AIRFLOW_DB:-airflow_db} + DB_USER: ${DB_USER:-airflow_user} + DB_SCHEME: ${DB_SCHEME:-postgresql+psycopg2} + DB_PASSWORD: ${DB_PASSWORD:-airflow_pass} + expose: + - 8080 + ports: + - 8080:8080 + networks: + - app_net + extra_hosts: + - "postgres:172.16.240.10" + - "localhost:172.16.240.11" + - "localhost:172.16.240.13" + volumes: + - ingestion-volume-dag-airflow:/airflow/dag_generated_configs + - ingestion-volume-dags:/airflow/dags + - ingestion-volume-tmp:/tmp + +networks: + app_net: + ipam: + driver: default + config: + - subnet: "172.16.240.0/24"