Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menyebarkan aplikasi Formulir Web ASP.NET di AWS
Mengelola NuGet paket
NuGet adalah repositori yang berisi dan mengelola paket kode untuk.NET. Aplikasi dapat memiliki dua jenis NuGet paket yang diinstal: paket yang tersedia untuk umum dari nuget.org
Untuk mengatasi masalah ini, Anda dapat menyediakan repositori artefak terkelola (NuGet) untuk mengunduh paket dari sumber eksternal seperti nuget.org. Anda dapat menggunakan AWS CodeArtifact, yang merupakan layanan repositori artefak yang dikelola sepenuhnya, sebagai repositori paket. NuGet Untuk informasi lebih lanjut, lihat posting AWS blog Menggunakan NuGet dengan AWS CodeArtifact
Untuk mengkonfigurasi aplikasi Anda untuk menggunakan repositori NuGet paket, buat NuGet.config
file di root proyek atau direktori root solusi. File ini menentukan sumber paket yang NuGet harus digunakan saat memulihkan paket. Contoh berikut menunjukkan cara mengkonfigurasi NuGet.config
file yang akan digunakan CodeArtifact:
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageRestore> <!-- Allow NuGet to download missing packages --> <add key="enabled" value="True" /> <!-- Automatically check for missing packages during build in Visual Studio --> <add key="automatic" value="True" /> </packageRestore> <packageSources> <add key="MyRepo" value="https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/nuget/my_repo/v3/index.json" /> </packageSources> </configuration>
Dalam contoh ini, ganti https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/nuget/my_repo/v3/index.json
dengan URL sebenarnya dari CodeArtifact repositori Anda. Anda dapat menemukan URL ini di CodeArtifact konsolaws codeartifact get-repository-endpoint
perintah.
penting
-
Mengkonfigurasi
NuGet.config
file mempengaruhi semua proyek dalam struktur direktori yang sama. Jika Anda ingin menggunakan sumber paket yang berbeda untuk proyek yang berbeda, buatNuGet.config
file terpisah untuk setiap proyek atau solusi. -
Pastikan bahwa instans membangun aplikasi memiliki izin yang diperlukan dan akses jaringan untuk terhubung ke repositori NuGet paket (seperti). CodeArtifact Untuk informasi selengkapnya tentang mendapatkan kredensil, lihat Menggunakan CodeArtifact dengan nuget atau dotnet CLI dalam dokumentasi. CodeArtifact
Membangun aplikasi
Saat Anda memigrasikan aplikasi ASP.NET Web Forms lama ke AWS, Anda terus menggunakan Microsoft Build Engine (MSBuild) sebagai alat utama untuk membangun aplikasi. MSBuild Biasanya dibundel dengan Visual Studio, tetapi Anda dapat mengunduh dan menggunakan MSBuild executable mandiri dari Microsoft tanpa menginstal Visual Studio. Pendekatan ini sangat berguna ketika Anda membangun aplikasi Formulir Web Anda AWS, di mana Anda dapat menggunakan instance Windows atau wadah Docker dengan MSBuild diinstal.
Ada dua langkah utama yang diperlukan untuk membangun aplikasi ASP.NET Web Forms: memulihkan NuGet paket dan membangun aplikasi. Spesifikasi bagaimana langkah-langkah ini dilakukan dapat bervariasi tergantung pada alat CI/CD yang Anda pilih untuk digunakan. Misalnya, jika Anda menggunakan AWS CodeBuild, proses build dijalankan di dalam wadah Docker.
Kembalikan NuGet paket
Sebelum Anda membangun aplikasi Anda, Anda harus mengembalikan NuGet paket yang diperlukan oleh proyek. Anda dapat melakukan ini dengan menggunakan salah satu MSBuild atau NuGet perintah Command Line Interface (CLI), dijalankan di direktori root proyek.
Menggunakan MSBuild:
msbuild -t:restore
Menggunakan NuGet CLI:
nuget restore
Membangun menggunakan MSBuild
Setelah memulihkan NuGet paket, Anda dapat melanjutkan dengan perintah build utama yang menghasilkan artefak penerapan. Perintah biasanya menentukan file proyek, konfigurasi build (misalnya,Release
), dan direktori output untuk artefak yang dibangun.
msbuild <ProjectName>.csproj /p:Configuration=Release /p:OutDir=<OutDir>
Untuk informasi selengkapnya tentang MSBuild opsi, lihat referensi MSBuild baris perintah
Untuk informasi lebih lanjut tentang membangun aplikasi ASP.NET dengan AWS CodeBuild, lihat posting AWS blog Membuat pipeline CI/CD untuk ASP.NET
Menerapkan aplikasi
Setelah Anda membangun aplikasi Formulir Web Anda, Anda menyebarkan artefak ke lingkungan target. AWS Dalam sebagian besar skenario, Anda dapat melakukan zip dan mengunggah artefak bawaan ke bucket Amazon Simple Storage Service (Amazon S3) untuk memudahkan distribusi dan penerapan. Untuk petunjuk, lihat dokumentasi Amazon S3.
Ada dua opsi utama untuk menyebarkan artefak ke EC2 instance Amazon: manual dan otomatis.
Penyebaran manual
Opsi ini melibatkan penggunaan data pengguna EC2 instance untuk menyertakan skrip yang akan melakukan tugas-tugas berikut:
-
Instal Layanan Informasi Internet (IIS)
-
Tarik dan bongkar artefak build dari bucket Amazon S3
-
Buat dan konfigurasikan aplikasi IIS
Meskipun pendekatan ini memberikan fleksibilitas, pendekatan ini memerlukan intervensi manual dan mungkin menjadi tantangan untuk dikelola sesuai skala aplikasi Anda atau jika sering mengalami pembaruan.
Otomatisasi deployment
Pendekatan yang disarankan adalah digunakan AWS CodeDeploy
Untuk informasi lebih lanjut dan contoh tentang pengaturan pipeline CI/CD untuk aplikasi ASP.NET Web Forms dengan menggunakan CodePipeline,, dan CodeBuild CodeDeploy, lihat posting AWS blog Membuat pipeline CI/CD
Dengan menggunakan Layanan AWS seperti CodeBuild,, dan CodeDeploy CodePipeline, Anda dapat merampingkan proses pembuatan dan penerapan untuk aplikasi Formulir Web ASP.NET yang dimigrasi, dan memastikan penerapan infrastruktur yang konsisten dan andal. AWS
Untuk informasi tambahan tentang penerapan otomatis, lihat posting AWS blog Menghasilkan Pipelines CI/CD untuk Aplikasi ASP.NET Containerized menggunakan AWS App2Container dan informasi tentang membangun pipeline CI/CD untuk aplikasi .NET Framework