Menyiapkan lingkungan pengembangan Anda di macOS X
Anda dapat membuat aplikasi Azure Service Fabric untuk dijalankan di kluster Linux menggunakan macOS X. Dokumen ini membahas cara menyiapkan Mac untuk pengembangan.
Prasyarat
Azure Service Fabric tidak berjalan secara native di macOS X. Untuk menjalankan kluster Service Fabric lokal, gambar kontainer Docker yang telah dikonfigurasi sebelumnya disediakan. Sebelum memulai, Anda memerlukan:
Persyaratan sistem untuk menginstal Docker Desktop di Mac
Tip
Untuk menginstal Docker di Mac Anda, ikuti langkah-langkah dalam dokumentasi Docker. Setelah menginstal, Anda dapat menggunakan Docker Desktop untuk mengatur preferensi termasuk batas sumber daya dan pemanfaatan disk.
Membuat kontainer lokal dan menyiapkan Service Fabric
Untuk menyiapkan kontainer Docker lokal dan memiliki kluster Service Fabric yang berjalan di atasnya, lakukan langkah-langkah berikut:
Perbarui konfigurasi daemon Docker di host Anda dengan pengaturan berikut ini dan mulai ulang daemon Docker:
{ "ipv6": true, "fixed-cidr-v6": "fd00::/64" }
Anda dapat memperbarui pengaturan ini langsung di file daemon.json di jalur penginstalan Docker Anda. Anda dapat langsung mengubah pengaturan konfigurasi daemon di Docker. Pilih ikon Docker, lalu pilih Preferensi>Daemon>Tingkat Lanjut.
Catatan
Direkomendasikan untuk mengubah daemon secara langsung di Docker karena lokasi file daemon.json dapat bervariasi dari komputer ke komputer. Misalnya, ~/Library/Containers/com.docker.docker/Data/database/com.docker.driver.amd64-linux/etc/docker/daemon.json.
Tip
Sebaiknya tingkatkan sumber daya yang dialokasikan untuk Docker saat menguji aplikasi besar. Ini dapat dilakukan dengan memilih Ikon Docker, lalu memilih Tingkat Lanjut untuk menyesuaikan jumlah core dan memori.
Mulai kluster.
Terbaru:
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
Secara default, hal ini akan menarik citra dengan versi terbaru Service Fabric. Untuk revisi tertentu, kunjungi halaman Service Fabric Onebox di Docker Hub.
Opsional: Buat citra Service Fabric yang diperluas.
Di direktori baru, buat file yang disebut
Dockerfile
untuk menyusun citra yang disesuaikan:Catatan
Anda dapat menyesuaikan citra di atas dengan Dockerfile untuk menambahkan program atau dependensi tambahan ke dalam kontainer Anda. Misalnya, menambahkan
RUN apt-get install nodejs -y
akan memungkinkan dukungan untuk aplikasinodejs
sebagai tamu yang dapat dijalankan.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
Secara default, hal ini akan menarik citra dengan versi terbaru Service Fabric. Untuk revisi khusus, harap kunjungi halaman Docker Hub.
Untuk membangun gambar yang dapat digunakan kembali dari
Dockerfile
, buka terminal dancd
ke direktori yang menahan eksekusi AndaDockerfile
kemudian:docker build -t mysfcluster .
Catatan
Operasi ini akan memakan waktu tetapi hanya berlaku satu kali.
Sekarang Anda dapat dengan cepat memulai salinan lokal Service Fabric kapan pun Anda membutuhkannya dengan menjalankan:
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
Berikan nama untuk instans kontainer Anda sehingga dapat ditangani dengan cara yang lebih mudah dibaca.
Jika aplikasi Anda mendengarkan port tertentu, port harus ditentukan menggunakan tag
-p
tambahan. Misalnya, jika aplikasi Anda mendengarkan di port 8080, tambahkan tag-p
berikut:docker run -itd -p 19000:19000 -p 19080:19080 -p 8080:8080 --name sfonebox mcr.microsoft.com/service-fabric/onebox:u18
Kluster akan memakan waktu sejenak untuk memulai. Saat sedang berjalan, Anda dapat melihat log menggunakan perintah berikut atau melompat ke dasbor untuk melihat kesehatan kluster:
http://localhost:19080
docker logs sftestcluster
Untuk menghentikan dan membersihkan kontainer, gunakan perintah berikut. Namun, kami akan menggunakan kontainer ini pada langkah berikutnya.
docker rm -f sftestcluster
Batasan Umum
Berikut ini adalah batasan yang diketahui dari kluster lokal yang berjalan dalam kontainer untuk Mac:
- Layanan DNS tidak berjalan dan saat ini tidak didukung dalam kontainer. Masalah #132
- Menjalankan aplikasi berbasis kontainer memerlukan menjalankan SF pada host Linux. Aplikasi kontainer berlapis saat ini tidak didukung.
Menyiapkan Service Fabric CLI (sfctl) di Mac Anda
Ikuti petunjuk di Service Fabric CLI untuk menginstal Service Fabric CLI (sfctl
) di Mac Anda.
Perintah CLI mendukung berinteraksi dengan entitas Service Fabric, termasuk kluster, aplikasi, dan layanan.
- Untuk tersambung ke kluster sebelum menyebarkan aplikasi, jalankan perintah di bawah ini.
sfctl cluster select --endpoint http://localhost:19080
Membuat aplikasi di Mac Anda menggunakan Yeoman
Service Fabric menyediakan alat perancah yang membantu Anda membuat aplikasi Service Fabric dari terminal dengan menggunakan generator templat Yeoman. Gunakan langkah-langkah berikut untuk memastikan bahwa generator templat Service Fabric Yeoman berfungsi pada komputer Anda:
Node.js dan Node Package Manager harus diinstal di Mac Anda. Perangkat lunak dapat diinstal dengan menggunakan HomeBrew, sebagai berikut:
brew install node node -v npm -v
Instal generator templat Yeoman di mesin Anda dari Node Manajer Paket:
npm install -g yo
Instal generator Yeoman yang Anda inginkan dengan mengikuti langkah-langkah dalam dokumentasi memulai. Untuk membuat aplikasi Service Fabric dengan menggunakan Yeoman, ikuti langkah-langkah berikut:
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
Setelah Anda menginstal generator, buat layanan kontainer atau executable tamu dengan menjalankan
yo azuresfguest
atauyo azuresfcontainer
.Untuk membangun aplikasi Service Fabric Java di Mac Anda, JDK versi 1.8 dan Gradle harus diinstal pada komputer host. Perangkat lunak dapat diinstal dengan menggunakan HomeBrew, sebagai berikut:
brew update brew cask install java brew install gradle
Penting
Versi saat ini dari
brew cask install java
dapat menginstal versi JDK yang lebih baru. Pastikan untuk menginstal JDK 8.
Menyebarkan aplikasi di Mac Anda dari terminal
Setelah membuat dan membangun aplikasi Service Fabric, Anda dapat menyebarkan aplikasi dengan menggunakan Service Fabric CLI:
Sambungkan ke kluster Service Fabric yang berjalan di dalam instans kontainer di Mac Anda:
sfctl cluster select --endpoint http://localhost:19080
Dari dalam direktori proyek Anda, jalankan skrip penginstalan:
cd MyProject bash install.sh
Menyiapkan pengembangan .NET Core 3.1
Instal .NET Core 3.1 SDK untuk Mac untuk mulai membuat aplikasi C# Service Fabric. Paket untuk aplikasi .NET Core Service Fabric dihosting di NuGet.org.
Menginstal plug-in Service Fabric untuk Eclipse di Mac Anda
Azure Service Fabric menyediakan plug-in untuk Eclipse Neon (atau yang lebih baru) untuk Java IDE. Plug-in menyederhanakan proses pembuatan, pembangunan, dan penyebaran layanan Java. Untuk menginstal atau memperbarui plug-in Service Fabric untuk Eclipse ke versi terbaru, ikuti langkah-langkah ini. Langkah-langkah lain dalam Service Fabric untuk dokumentasi Eclipse juga dapat diterapkan: membangun aplikasi, menambahkan layanan ke aplikasi, menghapus instalan aplikasi, dan sebagainya.
Langkah terakhir adalah membuat instans kontainer dengan jalur yang dibagikan dengan host Anda. Plug-in memerlukan jenis instansiasi ini untuk bekerja dengan kontainer Docker di Mac Anda. Contohnya:
docker run -itd -p 19080:19080 -v /Users/sayantan/work/workspaces/mySFWorkspace:/tmp/mySFWorkspace --name sfonebox mcr.microsoft.com/service-fabric/onebox:latest
Atribut tersebut didefinisikan sebagai berikut:
/Users/sayantan/work/workspaces/mySFWorkspace
adalah jalur ruang kerja yang sepenuhnya memenuhi syarat di Mac Anda./tmp/mySFWorkspace
adalah jalur yang ada di dalam kontainer ke tempat ruang kerja harus dipetakan.
Catatan
Jika Anda memiliki nama/jalur berbeda untuk ruang kerja Anda, perbarui nilai-nilai ini di perintah docker run
.
Jika Anda memulai kontainer dengan nama selain sfonebox
, perbarui nilai nama dalam file testclient.sh di aplikasi Java aktor Service Fabric Anda.
Langkah berikutnya
- Membuat dan menyebarkan aplikasi Service Fabric Java pertama di Linux menggunakan Yeoman
- Membuat dan menyebarkan aplikasi Service Fabric Java pertama di Linux menggunakan plug-in Service Fabric untuk Eclipse
- Buat kluster Service Fabric di portal Microsoft Azure
- Membuat kluster Service Fabric menggunakan Azure Resource Manager
- Baca tentang Model aplikasi Service Fabric
- Menggunakan Service Fabric CLI untuk mengelola aplikasi
- Siapkan lingkungan pengembangan Linux di Windows