Distribuera OSDU-administratörsgränssnittet ovanpå Azure Data Manager for Energy
Den här guiden visar hur du distribuerar OSDU-administratörsgränssnittet ovanpå adme-instansen (Azure Data Manager for Energy).
Användargränssnittet för OSDU-administratören gör det möjligt för plattformsadministratörer att hantera den Azure Data Manager for Energy-datapartition som du ansluter den till. Hanteringsuppgifterna omfattar rättigheter (användar- och grupphantering), juridiska taggar, scheman, referensdata, vy och visualisering av objekt på en karta.
Förutsättningar
En Microsoft Entra-ID-appregistrering.
Den här appregistreringen kan vara samma som den som används för Azure Data Manager for Energy-instansen. Följande API-behörigheter krävs i appregistreringen för att administratörsgränssnittet ska fungera korrekt.När du först loggar in på administratörsgränssnittet begär det nödvändiga behörigheter. Du kan också bevilja nödvändiga behörigheter i förväg. Mer information finns i dokumentationen om API-behörighet för appregistrering.
Distribueringsalternativ
Det finns två distributionsalternativ för OSDU-administratörsgränssnittet:
Snabbdistribuering med Azure Container Apps: Distribuera med ett klick med Azure Container Apps. Den här distributionen är det enklaste och snabbaste sättet att distribuera OSDU-administratörsgränssnittet. Den stöder både offentliga och privata distributioner.
Anpassad distribution med azure storage-kontots statiska webbplats: Skapa och distribuera OSDU-administratörsgränssnittet med hjälp av Azure Storage-kontot. Det här distributionsalternativet är mer anpassningsbart och gör att du kan konfigurera distributionen efter dina behov.
Snabbdistribution med Azure Container Apps
Deploy to Azure
Välj knappen för att distribuera användargränssnittet för OSDU-administratören med Hjälp av Azure Container Apps.Fyll i de obligatoriska parametrarna i Azure Portal. Mer information om parametrarna finns i avsnittet parametrar för mer information.
Välj Granska + skapa och sedan Skapa för att distribuera OSDU-administratörsgränssnittet.
Kontrollera avsnittet
Outputs
för URL:en för det distribuerade användargränssnittet för OSDU-administratör.Konfigurera ADME CORS-principen och omdirigerings-URI:n för appregistrerings-SPA med webbplatsens URL.
Öppna URL:en i en webbläsare och kontrollera att den fungerar korrekt och ansluten till rätt Azure Data Manager för Energy-instans.
Parametrar
Parameter | Beskrivning | Obligatoriskt |
---|---|---|
Prenumeration | Azure-prenumerationen som operativsystemdu-administratörsgränssnittet ska distribueras till. | Ja |
Resursgrupp | Den resursgrupp som osDU-administratörsgränssnittet ska distribueras till. | Ja |
Region | Den Azure-region som osDU-administratörsgränssnittet ska distribueras till. | Ja |
Name | Namnet på OSDU Admin UI-instansen. Andra resurser använder det här namnet som basnamn och lägger till en tjänstförkortning | Ja |
Containeravbildning | Containeravbildningen som ska användas för OSDU-administratörsgränssnittet. Se OSDU Forum Admin UI Container Registry för tillgängliga avbildningar. | Ja |
Osdu-slutpunkt | Slutpunkten för Azure Data Manager for Energy- eller OSDU-instansen att ansluta till. | Ja |
Datapartitions-ID | Datapartitions-ID:t för Azure Data Manager for Energy- eller OSDU-instansen att ansluta till. | Ja |
Domännamn för berättiganden | Domännamnet som ska användas för rättighetstjänsten. Behåll .dataservices.energy för alla ADME-distributioner, uppdatera endast om du använder en annan OSDU-implementering. |
Ja |
Client ID | Klient-ID:t för appregistreringen som ska användas för OSDU-administratörsgränssnittet. | Ja |
Omfattning | Omfånget för den appregistrering som används av Azure Data Manager för Energy eller OSDU. Om klient-ID:t är ADME-appregistreringen kan du lämna det här standardvärdet. | Ja |
Anslutningsslutpunkt | Valfritt: OSDU Admin UI Connector API-slutpunkten som ska användas för administratörsgränssnittet. | Nej |
Aktivera privat nätverk | Valfritt: Aktivera åtkomst till det privata nätverket till OSDU-administratörsgränssnittet. | Nej |
Aktivera loggning | Valfritt: Aktivera loggning för OSDU-administratörsgränssnittet. | Nej |
Anpassad distribution med azure storage-kontots statiska webbplats
Förbereda datorn
- Installera Visual Studio Code med Dev Containers. Det är möjligt att distribuera användargränssnittet för OSDU-administratören från din lokala dator med antingen Linux eller Windows-undersystem för Linux (WSL), vi rekommenderar att du använder en Dev Container för att eliminera potentiella konflikter mellan verktygsversioner, miljöer osv.
Miljöinställningar
Använd Dev Container i Visual Studio Code för att distribuera OSDU-administratörsgränssnittet för att eliminera konflikter från den lokala datorn.
Välj
Remote - Containers | Open
för att öppna en utvecklingscontainer och klona OSDU Admin UI-lagringsplatsen.Acceptera kloningsprompten.
När du uppmanas att ange en mall för containerkonfiguration.
- Välj Ubuntu.
- Acceptera standardversionen.
- Lägg inte till några extra funktioner.
Efter några minuter körs devcontainern.
Öppna terminalfönstret.
Installera Angular CLI, Azure CLI, npm och Node Version Manager (NVM)..
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash && \ export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" && \ nvm install 14.17.3 && \ export NG_CLI_ANALYTICS=false && \ npm install -g @angular/cli@13.3.9 && \ apt-get install jq -y && \ curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
Logga in på Azure CLI genom att köra kommandot på terminalen. Det tar dig till inloggningsskärmen.
az login
Det tar dig till inloggningsskärmen. Ange dina autentiseringsuppgifter och när du har lyckats visas ett meddelande om att det lyckades.
Kontrollera att du använder rätt prenumeration.
az account show
Om det behövs använder du den här koden för att ändra prenumerationen.
az account set --subscription <subscription-id>
Konfigurera miljövariabler
Ange nödvändiga miljövariabler i terminalen.
export WEBSITE_NAME="" ## Unique name of the static web app or storage account that will be generated. Storage account name must be between 3 and 24 characters in length and use numbers and lower-case letters only. export RESOURCE_GROUP="" ## Name of resource group export LOCATION="" ## Azure region to deploy to, i.e. "westeurope"
Distribuera lagringskonto
Skapa resursgrupp. Hoppa över det här steget om resursgruppen redan finns.
az group create \ --name $RESOURCE_GROUP \ --location $LOCATION
Skapa ett lagringskonto.
az storage account create \ --resource-group $RESOURCE_GROUP \ --location $LOCATION \ --name $WEBSITE_NAME \ --sku Standard_LRS \ --public-network-access Enabled \ --allow-blob-public-access true
Konfigurera den statiska webbplatsen.
az storage blob service-properties update \ --account-name $WEBSITE_NAME \ --static-website \ --404-document index.html \ --index-document index.html
Ange $web containerbehörigheter för att tillåta anonym åtkomst.
az storage container set-permission \ --name '$web' \ --account-name $WEBSITE_NAME \ --public-access blob
Skapa och distribuera webbappen
Gå till mappen
OSDUApp
.cd OSDUApp/
Kopiera Azure routing.ts-fil.
cp providers/azure/routing.ts src/app/routing.ts
Installera beroenden.
npm install
Ändra parametrarna i konfigurationsfilen som finns på
/src/config/config.json
.
Ersätt miljövariablernas värden med dina värden.
export OSDU_ENDPOINT="" # Endpoint of the Azure Data Manager for Energy or OSDU instance to connect to
export DATA_PARTITION_ID="" # ADME Data Partition ID (i.e. opendes)
export DOMAIN_NAME=".dataservices.energy" # Domain name to use for the entitlements service. Use .dataservices.energy for any ADME deployment.
export TENANT_ID="" # Entra ID tenant ID
export CLIENT_ID="" # App Registration ID to use for the admin UI, usually the same as the ADME App Registration ID
export SCOPE="" # Scope of the ADME instance, i.e. "6ee7e0d6-0641-4b29-a283-541c5d00655a/.default"
export GRAPH_ENDPOINT="https://graph.microsoft.com/v1.0/" # Microsoft Graph API endpoint
export APPINSIGHTS_INSTRUMENTATIONKEY="" # Optional. Application Insights instrumentation key
export OSDU_CONNECTOR_API_ENDPOINT="" # Optional. API endpoint of the OSDU Connector API
jq --arg data "$DATA_PARTITION_ID" \
--arg domain "$DOMAIN_NAME" \
--arg tenant "$TENANT_ID" \
--arg client "$CLIENT_ID" \
--arg redirect "$REDIRECT_URI" \
--arg scope "$SCOPE" \
--arg endpoint "$OSDU_ENDPOINT" \
--arg graph "$GRAPH_ENDPOINT" \
--arg appinnsights "$APPINSIGHTS_INSTRUMENTATIONKEY" \
--arg connectorapi "$OSDU_CONNECTOR_API_ENDPOINT" \
'.settings.appInsights.instrumentationKey = $appinnsights |
.settings.data_partition = $data |
.settings.domain_name = $domain |
.settings.idp.tenant_id = $tenant |
.settings.idp.client_id = $client |
.settings.idp.redirect_uri = $redirect |
.settings.idp.scope = $scope |
.settings.api_endpoints.entitlement_endpoint = $endpoint |
.settings.api_endpoints.storage_endpoint = $endpoint |
.settings.api_endpoints.search_endpoint = $endpoint |
.settings.api_endpoints.legal_endpoint = $endpoint |
.settings.api_endpoints.schema_endpoint = $endpoint |
.settings.api_endpoints.file_endpoint = $endpoint |
.settings.api_endpoints.secrets_endpoint = $connectorapi |
.settings.api_endpoints.graphAPI_endpoint = $graph |
.settings.api_endpoints.workflow_endpoint = $endpoint |
.settings.api_endpoints.secrets_endpoint = $endpoint |
.settings.api_endpoints.wddms_endpoint = $endpoint' \
src/config/config.json > src/config/temp.json
mv src/config/temp.json src/config/config.json