Sdílet prostřednictvím


Nastavení vývojového prostředí v macOS X

Pomocí macOS X můžete vytvářet aplikace Azure Service Fabric, které se budou spouštět v clusterech s Linuxem. Tento dokument popisuje, jak nastavit Mac pro vývoj.

Požadavky

Azure Service Fabric se nativně nespouští v macOS X. Pro spuštění místního clusteru Service Fabric je k dispozici předem nakonfigurovaná image kontejneru Dockeru. Než začnete, budete potřebovat:

Tip

Pokud chcete nainstalovat Docker na svém počítači Mac, postupujte podle kroků v dokumentaci k Dockeru. Po instalaci můžete pomocí Docker Desktopu nastavit předvolby, včetně omezení prostředků a využití disku.

Vytvoření místního kontejneru a nastavení Service Fabric

Pokud chcete nastavit místní kontejner Dockeru a mít v něm spuštěný cluster Service Fabric, proveďte následující kroky:

  1. Aktualizujte konfiguraci démona Dockeru na hostiteli pomocí následujícího nastavení a potom démon Dockeru restartujte:

    {
        "ipv6": true,
        "fixed-cidr-v6": "fd00::/64"
    }
    

    Toto nastavení můžete aktualizovat přímo v souboru daemon.json v instalační cestě Dockeru. Nastavení konfigurace démona můžete přímo upravit v Dockeru. Vyberte ikonu Docker a potom vyberte Předvolby>Démon>Upřesnit.

    Poznámka:

    Úprava démona přímo v Dockeru se doporučuje, protože umístění souboru daemon.json se může lišit od počítače po počítač. Například ~/Library/Containers/com.docker.docker/Data/database/com.docker.driver.amd64-linux/etc/docker/daemon.json.

    Tip

    Při testování rozsáhlých aplikací doporučujeme zvýšit množství prostředků přidělených Dockeru. Můžete to provést tak, že vyberete ikonu Dockeru, pak vyberete Upřesnit a upravíte počet jader a velikost paměti.

  2. Spusťte cluster.

    Nejnovější:

    docker run --name sftestcluster -d -v /var/run/docker.sock:/var/run/docker.sock -p 19080:19080 -p 19000:19000 -p 25100-25200:25100-25200 mcr.microsoft.com/service-fabric/onebox:latest
    

    Ubuntu 18.04 LTS:

    docker run --name sftestcluster -d -v /var/run/docker.sock:/var/run/docker.sock -p 19080:19080 -p 19000:19000 -p 25100-25200:25100-25200 mcr.microsoft.com/service-fabric/onebox:u18
    

    Tip

    Ve výchozím nastavení se tím přetáhne image s nejnovější verzí Service Fabric. Konkrétní revize najdete na stránce Service Fabric Oneboxu v Docker Hubu.

  3. Volitelné: Sestavte rozšířenou image Service Fabric.

    V novém adresáři vytvořte soubor volaný Dockerfile pro sestavení přizpůsobené image:

    Poznámka:

    Výše uvedenou image můžete přizpůsobit souborem Dockerfile a přidat do kontejneru další programy nebo závislosti. Například přidáním RUN apt-get install nodejs -y se povolí podpora aplikací nodejs jako spustitelných souborů typu Host.

    FROM mcr.microsoft.com/service-fabric/onebox:u18
    RUN apt-get install nodejs -y
    EXPOSE 19080 19000 80 443
    WORKDIR /home/ClusterDeployer
    CMD ["./ClusterDeployer.sh"]
    

    Tip

    Ve výchozím nastavení se tím přetáhne image s nejnovější verzí Service Fabric. Konkrétní revize najdete na stránce Docker Hubu.

    Pokud chcete vytvořit opakovaně použitelnou image z Dockerfileterminálu, otevřete terminál a cd do adresáře, ve kterém je podržíte, a spusťte Dockerfile :

    docker build -t mysfcluster .
    

    Poznámka:

    Tato operace nějakou dobu trvá, ale stačí ji provést jenom jednou.

    Teď můžete rychle spustit místní kopii Service Fabric, kdykoli ji potřebujete, spuštěním tohoto příkazu:

    docker run --name sftestcluster -d -v /var/run/docker.sock:/var/run/docker.sock -p 19080:19080 -p 19000:19000 -p 25100-25200:25100-25200 mysfcluster
    

    Tip

    Zadejte název instance kontejneru, aby s ní šlo pracovat srozumitelněji.

    Pokud vaše aplikace naslouchá na konkrétních portech, musí se zadat pomocí dalších značek -p. Pokud například aplikace naslouchá na portu 8080, přidejte následující značku -p:

    docker run -itd -p 19000:19000 -p 19080:19080 -p 8080:8080 --name sfonebox mcr.microsoft.com/service-fabric/onebox:u18

  4. Spuštění clusteru bude chvíli trvat. Když je spuštěný, můžete zobrazit protokoly pomocí následujícího příkazu nebo přejít na řídicí panel a zobrazit stav clusterů: http://localhost:19080

    docker logs sftestcluster
    
  5. Pokud chcete kontejner zastavit a vyčistit, použijte následující příkaz. Tento kontejner ale budeme používat v dalším kroku.

    docker rm -f sftestcluster
    

Známá omezení

Následující seznam uvádí známá omezení pro místní cluster spuštěný v kontejneru pro Mac:

  • Služba DNS se nespustí a v kontejneru se v současné době nepodporuje. Problém č. 132
  • Spouštění aplikací založených na kontejnerech vyžaduje spuštění SF na hostiteli s Linuxem. Vnořené kontejnerové aplikace se v současné době nepodporují.

Nastavení Service Fabric CLI (sfctl) na počítači Mac

Pokud chcete nainstalovat Service Fabric CLI (sfctl) na svém počítači Mac, postupujte podle pokynů v tématu Service Fabric CLI. Příkazy rozhraní příkazového řádku podporují komunikaci s entitami Service Fabric, včetně clusterů, aplikací a služeb.

  1. Pokud se před nasazením aplikací chcete připojit ke clusteru, spusťte následující příkaz.
sfctl cluster select --endpoint http://localhost:19080

Vytvoření aplikace na počítači Mac pomocí Yeomana

Service Fabric nabízí nástroje pro generování uživatelského rozhraní, které vám pomůžou vytvořit aplikaci Service Fabric z terminálu pomocí generátoru šablon Yeoman. Postupujte podle následujících kroků, abyste zkontrolovali, že máte na svém počítači funkční generátor šablon Service Fabric Yeoman:

  1. Node.js a Node Správce balíčků musí být nainstalované na počítači Mac. Software jde nainstalovat pomocí HomeBrew, a to takto:

    brew install node
    node -v
    npm -v
    
  2. Nainstalujte generátor šablon Yeoman na svůj počítač z Node Správce balíčků:

    npm install -g yo
    
  3. Nainstalujte generátor Yeoman, který preferujete, podle kroků v úvodní dokumentaci. Pokud chcete vytvářet aplikace Service Fabric pomocí Yeomana, postupujte podle těchto kroků:

    npm install -g generator-azuresfjava       # for Service Fabric Java Applications
    npm install -g generator-azuresfguest      # for Service Fabric Guest executables
    npm install -g generator-azuresfcontainer  # for Service Fabric Container Applications
    
  4. Po nainstalování generátorů vytvořte spustitelné soubory hosta nebo služby kontejneru spuštěním příkazu yo azuresfguest nebo yo azuresfcontainer.

  5. K sestavení aplikace Service Fabric Java na počítači Mac musí být na hostitelském počítači nainstalovaná sada JDK verze 1.8 a Gradle. Software jde nainstalovat pomocí HomeBrew, a to takto:

    brew update
    brew cask install java
    brew install gradle
    

    Důležité

    Aktuální verze brew cask install java JDK mohou nainstalovat novější verzi sady JDK. Nezapomeňte nainstalovat sadu JDK 8.

Nasazení aplikace na počítači Mac z terminálu

Po vytvoření a sestavení aplikace Service Fabric ji můžete nasadit pomocí Service Fabric CLI:

  1. Připojte se ke clusteru Service Fabric spuštěnému uvnitř instance kontejneru na vašem počítači Mac:

    sfctl cluster select --endpoint http://localhost:19080
    
  2. Z adresáře vašeho projektu spusťte instalační skript:

    cd MyProject
    bash install.sh
    

Nastavení vývoje pro .NET Core 3.1

Nainstalujte sadu .NET Core 3.1 SDK pro Mac a začněte vytvářet aplikace Service Fabric v jazyce C#. Balíčky pro aplikace Service Fabric .NET Core jsou hostované v NuGet.org.

Instalace modulu plug-in Service Fabric pro Eclipse na počítači Mac

Azure Service Fabric poskytuje modul plug-in pro Eclipse Neon (nebo novější) pro Java IDE. Tento modul plug-in zjednodušuje proces vytváření, sestavování a nasazování služeb Java. Pokud chcete nainstalovat nebo aktualizovat modul plug-in Service Fabric pro Eclipse na nejnovější verzi, postupujte podle těchto kroků. Ostatní kroky v dokumentaci Service Fabric pro Eclipse lze také použít: sestavit aplikaci, přidat službu do aplikace, odinstalovat aplikaci a podobně.

Posledním krokem je vytvoření instance kontejneru s cestu, která je sdílená s hostitelem. Modul plug-in vyžaduje tento typ vytváření instancí, aby pracoval s kontejnerem Dockeru na vašem počítači Mac. Příklad:

docker run -itd -p 19080:19080 -v /Users/sayantan/work/workspaces/mySFWorkspace:/tmp/mySFWorkspace --name sfonebox mcr.microsoft.com/service-fabric/onebox:latest

Atributy jsou definovány takto:

  • /Users/sayantan/work/workspaces/mySFWorkspace je absolutní cestou pracovního prostoru na vašem počítači Mac.
  • /tmp/mySFWorkspace je cestou v rámci kontejneru, kam má být namapovaný pracovní prostor.

Poznámka:

Pokud pro pracovní prostor používáte jiný název nebo cestu, aktualizujte tyto hodnoty pomocí příkazu docker run.

Pokud spouštíte kontejner s jiným názvem než sfonebox, aktualizujte název v souboru testclient.sh ve vaší aplikaci Service Fabric Actor v Javě.

Další kroky