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:
Požadavky na systém pro instalaci Docker Desktopu na Mac
Instalace a spuštění Docker Desktopu na Macu
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:
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.
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
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
Dockerfile
terminálu, otevřete terminál acd
do adresáře, ve kterém je podržíte, a spusťteDockerfile
: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
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
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.
- 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:
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
Nainstalujte generátor šablon Yeoman na svůj počítač z Node Správce balíčků:
npm install -g yo
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
Po nainstalování generátorů vytvořte spustitelné soubory hosta nebo služby kontejneru spuštěním příkazu
yo azuresfguest
neboyo azuresfcontainer
.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:
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
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
- Vytvoření a nasazení první aplikace Service Fabric v Javě v Linuxu pomocí Yeomana
- Vytvoření a nasazení první aplikace Service Fabric v Javě v Linuxu pomocí modulu plug-in Service Fabric pro Eclipse
- Vytvoření clusteru služby Service Fabric na webu Azure Portal
- Vytvoření clusteru služby Service Fabric pomocí Azure Resource Manageru
- Pochopení aplikačního modelu služby Service Fabric
- Správa aplikací pomocí Service Fabric CLI
- Příprava linuxového vývojového prostředí ve Windows