Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tvůrce rozhraní DATA API (DAB) se publikuje jako image kontejneru do služby Microsoft Container Registry. Každý hostitel Dockeru může stáhnout image kontejneru a spustit DAB s minimální konfigurací. Tato příručka používá image kontejneru a místní konfigurační soubor k rychlému hostování a spouštění DAB bez nutnosti instalovat další nástroje.
Požadavky
Vytvoření ukázkových dat
V tomto krátkém průvodci stačí jednoduchá tabulka s několika řádky dat, která ukazuje, jak používat DAB v kontejneru Dockeru. Pro další zjednodušení používáme SQL Server pro Linux v imagi kontejneru Dockeru.
Stáhněte image kontejneru
mcr.microsoft.com/mssql/server:2022-latest.docker pull mcr.microsoft.com/mssql/server:2022-latestSpusťte image kontejneru, která
1433publikuje port a nastavísaheslo účtu na jedinečné heslo, které používáte v rámci tohoto průvodce.docker run \ --name mssql \ --publish 1433:1433 \ --detach \ --env "ACCEPT_EULA=Y" \ --env "MSSQL_SA_PASSWORD=<your-password>" \ mcr.microsoft.com/mssql/server:2022-latestDůležité
Toto je jednoduché fiktivní heslo pro tuto příručku. Ve skutečném světě byste použili jiný ověřovací mechanismus a ideálně jiný účet.
Připojte se k SQL Serveru pomocí preferovaného klienta nebo nástroje. Připojovací řetězec je
Server=localhost,1433;User Id=sa;Password=<your-password>;TrustServerCertificate=true;.Vytvořte novou databázi s názvem
Library, pokud ještě neexistuje.IF NOT EXISTS(SELECT name FROM sys.databases WHERE name = 'Library') BEGIN CREATE DATABASE Library; END GO USE LibraryVytvořte tabulku pojmenovanou
Booksse sloupciid,title,yearapages.DROP TABLE IF EXISTS dbo.Books; CREATE TABLE dbo.Books ( id int NOT NULL PRIMARY KEY, title nvarchar(1000) NOT NULL, [year] int null, [pages] int null ) GOVložte do
Bookstabulky čtyři ukázkové řádky knihy.INSERT INTO dbo.Books VALUES (1000, 'Practical Azure SQL Database for Modern Developers', 2020, 326), (1001, 'SQL Server 2019 Revealed: Including Big Data Clusters and Machine Learning', 2019, 444), (1002, 'Azure SQL Revealed: A Guide to the Cloud for SQL Server Professionals', 2020, 528), (1003, 'SQL Server 2022 Revealed: A Hybrid Data Platform Powered by Security, Performance, and Availability', 2022, 506) GOOtestujte data pomocí jednoduchého
SELECT *dotazu.SELECT * FROM dbo.Books
Vytvoření konfiguračního souboru
Vytvořte konfigurační soubor, který odpovídá tabulce vytvořené v předchozích krocích. Tento konfigurační soubor vysvětluje DAB, jak mapovat koncové body REST a GraphQL na skutečná data.
Vytvořte soubor s názvem
dab-config.json.Návod
Toto je výchozí název souboru konfiguračních souborů. Při použití výchozího názvu souboru se nemusíte při spouštění kontejneru zadávat konfigurační soubor.
Přidejte tento obsah JSON do souboru. Tato konfigurace vytvoří jednu entitu s názvem
booknamapovanou na existujícídbo.Bookstabulku.{ "$schema": "https://github.com/Azure/data-api-builder/releases/latest/download/dab.draft.schema.json", "data-source": { "database-type": "mssql", "connection-string": "Server=host.docker.internal\\mssql,1433;Initial Catalog=Library;User Id=sa;Password=<your-password>;TrustServerCertificate=true;" }, "runtime": { "rest": { "enabled": true }, "graphql": { "enabled": true } }, "entities": { "book": { "source": "dbo.Books", "permissions": [ { "actions": [ "read" ], "role": "anonymous" } ] } } }
Stažení a spuštění obrazu kontejneru Docker
Spusťte DAB pomocí image kontejneru Dockeru hostované ve službě Microsoft Container Registry. Při spuštění image kontejneru připojte adresář, aby daB mohl konfigurační soubor přečíst.
Stáhněte obraz kontejneru
mcr.microsoft.com/azure-databases/data-api-builderDockeru.docker pull mcr.microsoft.com/azure-databases/data-api-builderSpusťte kontejner, který publikuje
5000port, a vytvořte vazbu připojenídab-config.jsonsouboru.docker run \ --name dab \ --publish 5000:5000 \ --detach \ --mount type=bind,source=$(pwd)/dab-config.json,target=/App/dab-config.json,readonly \ mcr.microsoft.com/azure-databases/data-api-builderPomocí webového prohlížeče přejděte na
http://localhost:5000/api/bookadresu . Výstup by měl být pole JSON položek knihy z koncového bodu rozhraní REST API.{ "value": [ { "id": 1000, "title": "Practical Azure SQL Database for Modern Developers", "year": 2020, "pages": 326 }, { "id": 1001, "title": "SQL Server 2019 Revealed: Including Big Data Clusters and Machine Learning", "year": 2019, "pages": 444 }, { "id": 1002, "title": "Azure SQL Revealed: A Guide to the Cloud for SQL Server Professionals", "year": 2020, "pages": 528 }, { "id": 1003, "title": "SQL Server 2022 Revealed: A Hybrid Data Platform Powered by Security, Performance, and Availability", "year": 2022, "pages": 506 } ] }Poznámka:
Tato příručka používá připojení HTTP. Při spuštění kontejneru Tvůrce rozhraní DATA API v Dockeru uvidíte, že se mapuje jenom koncový bod HTTP. Pokud chcete, aby váš kontejner Dockeru podporoval PROTOKOL HTTPS pro místní vývoj, musíte zadat vlastní certifikát SSL/TLS a soubory privátního klíče vyžadované pro šifrování SSL/TLS a zveřejnit port HTTPS. Reverzní proxy server lze použít také k vynucení připojení klientů k vašemu serveru přes PROTOKOL HTTPS, aby se zajistilo, že komunikační kanál je před předáním požadavku do kontejneru šifrovaný.