Membuat paket sumber aplikasi - AWS Elastic Beanstalk

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Membuat paket sumber aplikasi

Saat Anda menggunakan konsol AWS Elastic Beanstalk untuk menyebarkan aplikasi baru atau versi aplikasi, Anda akan perlu untuk mengupload paket sumber. Sumber paket Anda harus memenuhi persyaratan berikut:

  • Terdiri dari satu file ZIP atau file WAR (Anda dapat menyertakan beberapa file WAR dalam file ZIP Anda)

  • Tidak lebih dari 500 MB

  • Tidak termasuk folder induk atau direktori tingkat atas (subdirektori baik-baik saja)

Jika Anda ingin menyebarkan aplikasi pekerja yang memproses tugas-tugas latar belakang periodik, paket sumber aplikasi Anda juga harus menyertakan file cron.yaml. Untuk informasi selengkapnya, lihat Tugas periodik.

Jika Anda menyebarkan aplikasi Anda dengan Elastic Beanstalk Command Line Interface (EB CLI), AWSToolkit for Eclipse, atau AWSToolkit for Visual Studio, file ZIP atau WAR akan secara otomatis terstruktur dengan benar. Untuk informasi selengkapnya, lihat Menggunakan antarmuka baris perintah Elastic Beanstalk (EB) CLI, Menyebarkan aplikasi Java dengan Elastic Beanstalk, dan YangAWS Toolkit for Visual Studio.

Membuat sebuah paket sumber dari baris perintah

Buat sebuah paket sumber menggunakan perintah zip. Untuk menyertakan file dan folder tersembunyi, gunakan pola seperti berikut ini.

~/myapp$ zip ../myapp.zip -r * .[^.]* adding: app.js (deflated 63%) adding: index.js (deflated 44%) adding: manual.js (deflated 64%) adding: package.json (deflated 40%) adding: restify.js (deflated 85%) adding: .ebextensions/ (stored 0%) adding: .ebextensions/xray.config (stored 0%)

Hal ini memastikan bahwa file konfigurasi Elastic Beanstalk dan file dan folder lain yang dimulai dengan sebuah titik (.) disertakan dalam arsip.

Untuk aplikasi web Tomcat, gunakan jar untuk membuat arsip web.

~/myapp$ jar -cvf myapp.war .

Perintah di atas termasuk file tersembunyi yang dapat meningkatkan ukuran paket sumber Anda yang tidak perlu. Untuk pengaturan lebih lanjut, gunakan pola file yang lebih rinci, atau membuat paket sumber Anda dengan Git.

Membuat paket sumber dengan Git

Jika Anda menggunakan Git untuk mengelola kode sumber aplikasi Anda, gunakan perintah git archive untuk membuat paket sumber Anda.

$ git archive -v -o myapp.zip --format=zip HEAD

git archive hanya menyertakan file yang disimpan dalam git, dan tidak termasuk berkas yang diabaikan dan berkas git. Ini membantu menjaga paket sumber Anda sekecil mungkin. Untuk informasi lebih lanjut, buka situs web halaman manual git-archive.

zip file di Mac OS X Finder atau Windows explorer

Saat Anda membuat file ZIP di Mac OS X Finder atau Windows Explorer, pastikan Anda zip file dan subfolder itu sendiri, bukan hanya zip folder induk.

catatan

Antarmuka pengguna grafis (GUI) pada Mac OS X dan sistem operasi berbasis Linux tidak menampilkan file dan folder dengan nama yang dimulai dengan sebuah titik (.). Gunakan baris perintah bukan GUI untuk mengkompres aplikasi Anda jika file ZIP harus menyertakan file dalam folder tersembunyi, seperti .ebextensions. Untuk prosedur baris perintah untuk membuat file ZIP pada Mac OS X atau sistem operasi berbasis Linux, lihat Membuat sebuah paket sumber dari baris perintah.

contoh

Misalkan Anda memiliki folder berlabel proyek Python myapp, yang mencakup berkas dan subfolder berikut ini:

myapplication.py README.md static/ static/css static/css/styles.css static/img static/img/favicon.ico static/img/logo.png templates/ templates/base.html templates/index.html

Seperti yang tercantum dalam daftar persyaratan di atas, paket sumber Anda harus dikompresi tanpa folder induk, sehingga struktur yang dekompresi tidak memuat direktori top-level tambahan. Dalam contoh ini, tidak ada folder myapp yang harus dibuat ketika file didekompresi (atau, pada baris perintah, tidak ada segmen myapp yang harus ditambahkan ke lokasi file).

Struktur file contoh ini digunakan di seluruh topik ini untuk menggambarkan bagaimana cara zip file.

Untuk zip file di Mac OS X Finder
  1. Buka folder proyek tingkat atas Anda dan pilih semua file dan subfolder di dalamnya. Jangan pilih folder tingkat atas itu sendiri.

    File yang dipilih di Mac OS X Finder
  2. Klik kanan file yang dipilih, lalu pilih Kompres X Item, tempat X adalah jumlah file dan subfolder yang telah Anda pilih.

    Mengompresi file dalam Mac OS X Finder
Untuk zip file dalam Windows explorer
  1. Buka folder proyek tingkat atas Anda dan pilih semua file dan subfolder di dalamnya. Jangan pilih folder tingkat atas itu sendiri.

    Berkas yang dipilih dalam Windows explorer
  2. Klik kanan file yang dipilih, pilih Kirim ke, lalu pilih Folder terkompresi (terzip).

    Mengompresi file dalam Windows explorer

Membuat bundel sumber untuk aplikasi NET

Jika Anda menggunakan Visual Studio, Anda dapat menggunakan alat deployment yang disertakan dalam AWS Toolkit for Visual Studio untuk menyebarkan aplikasi NET Anda untuk Elastic Beanstalk. Untuk informasi selengkapnya, lihat Men-deploy aplikasi Elastic Beanstalk di .NET menggunakan alat deployment.

Jika Anda perlu secara manual membuat bundel sumber untuk aplikasi .NET Anda, Anda tidak dapat hanya membuat file ZIP yang berisi direktori proyek. Anda harus membuat paket deployment web untuk proyek Anda yang cocok untuk deployment ke Elastic Beanstalk. Ada beberapa metode yang dapat Anda gunakan untuk membuat paket deployment:

  • Buat paket deployment menggunakan wizard Publikasikan Web dalam Visual Studio. Untuk informasi lebih lanjut, kunjungi Cara: Membuat Paket Deployment Web dalam Visual Studio.

    penting

    Ketika membuat paket deployment web, Anda harus memulai Nama situs dengan Default Web Site.

  • Jika Anda memiliki sebuah proyek NET, Anda dapat membuat paket deployment menggunakanmsbuild perintah seperti yang ditunjukkan dalam contoh berikut.

    penting

    Parameter DeployIisAppPath harus dimulai dengan Default Web Site.

    C:/> msbuild <web_app>.csproj /t:Package /p:DeployIisAppPath="Default Web Site"
  • Jika Anda memiliki proyek situs web, Anda dapat menggunakan alat IIS Web Deploy untuk membuat paket deployment. Untuk informasi lebih lanjut, kunjungi Pengemasan dan Pemulihan situs Web.

    penting

    Parameter apphostconfig harus dimulai dengan Default Web Site.

Jika Anda menyebarkan beberapa aplikasi atau ASP.NET Core aplikasi, tempatkan folder .ebextensions Anda di akar bundel sumber, berdampingan dengan bundel aplikasi dan bentuk file:

~/workspace/source-bundle/ |-- .ebextensions | |-- environmentvariables.config | `-- healthcheckurl.config |-- AspNetCore101HelloWorld.zip |-- AspNetCoreHelloWorld.zip |-- aws-windows-deployment-manifest.json `-- VS2015AspNetWebApiApp.zip

Menguji bundel sumber Anda

Anda mungkin ingin menguji bundel sumber Anda secara lokal sebelum Anda mengunggah ke Elastic Beanstalk. Karena Elastic Beanstalk pada dasarnya menggunakan baris perintah untuk mengekstrak file, yang terbaik untuk melakukan tes Anda dari baris perintah daripada dengan alat GUI.

Untuk menguji ekstraksi file di Mac OS X atau Linux
  1. Buka jendela terminal (Mac OS X) atau sambungkan ke server Linux. Arahkan ke direktori yang berisi bundel sumber Anda.

  2. Menggunakan perintah unzip atau tar xf, buka kompresi arsip.

  3. Pastikan bahwa file dekompresi muncul di folder yang sama dengan arsip itu sendiri, bukan di folder tingkat atas baru atau direktori.

    catatan

    Jika Anda menggunakan Mac OS X Finder untuk mendekompresi arsip, folder tingkat atas baru akan dibuat, tidak peduli bagaimana Anda menyusun arsip itu. Untuk hasil terbaik, gunakan command line.

Untuk menguji ekstraksi berkas di Windows
  1. Unduh atau pasang program yang mengizinkan Anda untuk mengekstrak fale yang dikompresi melalui baris perintah. Misalnya, Anda dapat mengunduh program unzip.exe gratis dari http://stahlforce.com/dev/index.php?tool=zipunzip.

  2. Jika perlu, salin file yang dieksekusi ke direktori yang berisi bundel sumber Anda. Jika Anda telah menginstal alat di seluruh sistem, Anda dapat melewati langkah ini.

  3. Menggunakan perintah yang sesuai, dekompresi arsip. Jika Anda mengunduh unzip.exe menggunakan link di langkah 1, perintahnya adalah unzip <archive-name>.

  4. Pastikan bahwa file dekompresi muncul di folder yang sama dengan arsip itu sendiri, bukan di folder tingkat atas baru atau direktori.