Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menyesuaikan perangkat lunak pada server Windows
Anda mungkin ingin menyesuaikan dan mengonfigurasi perangkat lunak yang diandalkan oleh aplikasi Anda. File ini dapat berupa dependensi yang dibutuhkan oleh aplikasi—misalnya, paket tambahan atau layanan yang perlu dijalankan. Untuk informasi umum tentang menyesuaikan dan mengonfigurasi lingkungan Elastic Beanstalk Anda, lihat Mengonfigurasi lingkungan Elastic Beanstalk.
catatan
YAMLbergantung pada lekukan yang konsisten. Cocokkan tingkat indentasi saat mengganti konten dalam file konfigurasi contoh dan pastikan bahwa editor teks Anda menggunakan spasi, bukan karakter tab, untuk indentasi.
File konfigurasi mendukung kunci berikut yang mempengaruhi server Windows tempat aplikasi Anda berjalan.
Kunci diproses dalam urutan yang tercantum di sini.
catatan
Lebih tua (tidak berversi). NETversi platform tidak memproses file konfigurasi dalam urutan yang benar. Pelajari lebih lanjut di Migrasi di versi utama dari platform server Elastic Beanstalk Windows.
Perhatikan peristiwa lingkungan Anda saat mengembangkan dan menguji file konfigurasi. Elastic Beanstalk mengabaikan file konfigurasi yang berisi kesalahan validasi, seperti kunci yang tidak valid, dan tidak memproses kunci lain dalam file yang sama. Ketika ini terjadi, Elastic Beanstalk menambahkan peristiwa peringatan log peristiwa.
Paket
Gunakan kunci packages
tersebut untuk mengunduh dan menginstal aplikasi dan komponen yang telah dikemas sebelumnya.
Di lingkungan Windows, Elastic Beanstalk mendukung pengunduhan dan penginstalan paket. MSI (Lingkungan Linux mendukung manajer paket tambahan. Untuk detailnya, lihat Paket pada halaman Menyesuaikan Perangkat Lunak pada Server Linux.)
Anda dapat mereferensikan lokasi eksternal apa pun, seperti objek Amazon Simple Storage Service (Amazon S3), selama objek URL tersebut dapat diakses publik.
Jika Anda menentukan beberapa paket msi:
, instalasinya tidak dijamin.
Sintaks
Tentukan nama pilihan Anda sebagai nama paket, dan URL ke lokasi MSI file sebagai nilainya. Anda dapat menentukan beberapa paket di bawah kunci msi:
.
packages:
msi:
package name
: package url
...
Contoh
Contoh berikut menentukan URL untuk men-download mysql dari. https://dev.mysql.com/
packages:
msi:
mysql: https://dev.mysql.com/get/Downloads/Connector-Net/mysql-connector-net-8.0.11.msi
Contoh berikut menentukan objek Amazon S3 sebagai lokasi fileMSI.
packages:
msi:
mymsi: https://amzn-s3-demo-bucket
.s3.amazonaws.com/myobject
.msi
Sumber
Gunakan sources
kunci untuk mengunduh file arsip dari publik URL dan membongkarnya di direktori target pada EC2 instance.
Sintaks
sources:
target directory
: location of archive file
Format yang didukung
Di lingkungan Windows, Elastic Beanstalk mendukung format .zip. (Lingkungan Linux mendukung format tambahan. Untuk detailnya, lihat Sumber pada halaman Menyesuaikan Perangkat Lunak di Server Linux.)
Anda dapat mereferensikan lokasi eksternal apa pun, seperti objek Amazon Simple Storage Service (Amazon S3), selama objek URL tersebut dapat diakses publik.
Contoh
Contoh berikut mengunduh file.zip publik dari Amazon S3 dan membongkarnya. c:/myproject/myapp
sources:
"c:/myproject/myapp": https://amzn-s3-demo-bucket
.s3.amazonaws.com/myobject
.zip
Berkas
Gunakan files
tombol untuk membuat file pada EC2 instance. Konten dapat berupa inline dalam file konfigurasi, atau dari file. URL File ditulis ke disk dalam urutan leksikografis. Untuk mengunduh file pribadi dari Amazon S3, berikan profil instans untuk autorisasi.
Sintaksis
files:
"target file location on disk
":
source: URL
authentication: authentication name
:
"target file location on disk
":
content: |
this is my content
encoding: encoding format
Opsi
content
-
(Opsional) String.
source
-
(Opsional) URL Dari mana file dimuat. Opsi ini tidak dapat ditentukan dengan kunci konten.
encoding
-
(Opsional) Format pengodean. Opsi ini hanya digunakan untuk nilai kunci konten yang disediakan. Nilai default-nya adalah
plain
.Nilai yang valid:
plain
|base64
authentication
-
(Opsional) Nama metode autentikasi AWS CloudFormation yang akan digunakan. Anda dapat menambahkan metode autentikasi ke metadata grup Auto Scaling dengan kunci Sumber Daya.
Contoh
Contoh berikut menunjukkan dua cara untuk menyediakan konten file: dariURL, atau inline dalam file konfigurasi.
files:
"c:\\targetdirectory\\targetfile.txt
":
source: http://foo.bar/myfile
"c:/targetdirectory/targetfile.txt
":
content: |
# this is my file
# with content
catatan
Jika Anda menggunakan backslash (\) di jalur file Anda, Anda harus mendahuluinya dengan backslash lain (karakter escape) seperti yang ditunjukkan pada contoh sebelumnya.
Contoh berikut menggunakan kunci Resources untuk menambahkan metode otentikasi bernama S3Auth dan menggunakannya untuk mengunduh file pribadi dari Amazon S3:
files:
"c:\\targetdirectory\\targetfile.zip":
source: https://elasticbeanstalk-us-east-2-123456789012.s3.amazonaws.com/prefix/myfile.zip
authentication: S3Auth
Resources:
AWSEBAutoScalingGroup:
Metadata:
AWS::CloudFormation::Authentication:
S3Auth
:
type: "s3"
s: ["amzn-s3-demo-bucket
"]
roleName:
"Fn::GetOptionSetting":
Namespace: "aws:autoscaling:launchconfiguration"
OptionName: "IamInstanceProfile"
DefaultValue: "aws-elasticbeanstalk-ec2-role"
Commands
Gunakan commands
tombol untuk menjalankan perintah pada EC2 instance. Perintah diproses dalam urutan abjad berdasarkan nama, dan mereka berjalan sebelum aplikasi dan server web diatur dan file versi aplikasi diekstrak.
Perintah yang ditentukan dijalankan sebagai pengguna Administrator.
Untuk memecahkan masalah dengan perintah Anda, Anda dapat menemukan outputnya di log instans.
Sintaksis
commands:
command name
:
command: command to run
Opsi
command
-
Baik array atau string yang menentukan perintah yang akan dijalankan. Jika Anda menggunakan array, Anda tidak perlu menghindari karakter spasi atau melampirkan parameter perintah dalam tanda kutip.
cwd
-
(Opsional) Direktori kerja. Secara default, Elastic Beanstalk mencoba untuk menemukan lokasi direktori proyek Anda. Jika tidak ditemukan, Elastic Beanstalk menggunakan
c:\Windows\System32
sebagai default. env
-
(Opsional) Atur variabel lingkungan untuk perintah. Properti ini menimpa, bukan menambahkan, lingkungan yang ada.
ignoreErrors
-
(Opsional) Nilai Boolean yang menentukan apakah perintah lain harus dijalankan jika perintah yang terdapat dalam kunci
command
gagal (mengembalikan nilai bukan nol). Tetapkan nilai ini ketrue
jika Anda ingin terus menjalankan perintah meskipun perintah gagal. Atur nilai kefalse
jika Anda ingin berhenti menjalankan perintah jika perintah gagal. Nilai default-nya adalahfalse
. test
-
(Opsional) Perintah yang harus mengembalikan nilai
true
(kode keluar 0) agar Elastic Beanstalk memproses perintah yang terdapat dalam kuncicommand
. waitAfterCompletion
-
(Opsional) Menunggu beberapa detik setelah perintah selesai sebelum menjalankan perintah berikutnya. Jika sistem memerlukan reboot setelah perintah selesai, sistem reboot setelah jumlah waktu yang ditentukan berlalu. Jika sistem melakukan reboot sebagai hasil dari suatu perintah, Elastic Beanstalk akan pulih ke titik setelah perintah dalam file konfigurasi. Nilai default adalah
60
detik. Anda juga dapat menentukanforever
, tetapi sistem harus melakukan reboot sebelum Anda dapat menjalankan perintah lain.
Contoh
Contoh berikut menyimpan output dari perintah set
ke file yang ditentukan. Jika ada perintah berikutnya, Elastic Beanstalk menjalankan perintah itu segera setelah perintah ini selesai. Jika perintah ini membutuhkan reboot, Elastic Beanstalk melakukan reboot instans segera setelah perintah selesai.
commands:
test:
command: set > c:\\myapp\\set.txt
waitAfterCompletion: 0
Layanan
Gunakan kunci services
untuk menentukan layanan yang harus dimulai atau dihentikan ketika instans diluncurkan. Kunci services
tersebut juga memungkinkan Anda untuk menentukan dependensi pada sumber, paket, dan file sehingga jika restart diperlukan akibat dari file yang diinstal, Elastic Beanstalk mengurus restart layanan.
Sintaksis
services:
windows:
name of service
:
files:
- "file name
"
sources:
- "directory
"
packages:
name of package manager
:
"package name
[: version
]"
commands:
- "name of command
"
Opsi
ensureRunning
-
(Opsional) Atur ke
true
untuk memastikan layanan berjalan setelah Elastic Beanstalk selesai.Atur ke
false
untuk memastikan layanan tidak berjalan setelah Elastic Beanstalk selesai.Abaikan kunci ini untuk tidak membuat perubahan pada status layanan.
enabled
-
(Opsional) Atur ke
true
untuk memastikan layanan dimulai secara otomatis setelah boot.Atur ke
false
untuk memastikan layanan tidak dimulai secara otomatis setelah boot.Abaikan kunci ini untuk tidak membuat perubahan pada properti ini.
files
-
Daftar file. Jika Elastic Beanstalk mengubah file secara langsung melalui blok file, layanan dimulai ulang.
sources
-
Daftar direktori. Jika Elastic Beanstalk memperluas arsip ke salah satu direktori ini, layanan akan dimulai ulang.
packages
-
Peta manajer paket ke daftar nama paket. Jika Elastic Beanstalk menginstal atau memperbarui salah satu paket ini, layanan akan dimulai ulang.
commands
-
Daftar nama perintah. Jika Elastic Beanstalk menjalankan perintah yang ditentukan, layanan akan dimulai ulang.
Contoh
services:
windows:
myservice:
enabled: true
ensureRunning: true
Perintah kontainer
Gunakan kunci container_commands
untuk menjalankan perintah yang mempengaruhi kode sumber aplikasi Anda. Perintah kontainer berjalan setelah aplikasi dan server web diatur dan arsip versi aplikasi telah diekstraksi, tetapi sebelum versi aplikasi di-deploy. Perintah non-kontainer dan operasi penyesuaian lainnya dilakukan sebelum kode sumber aplikasi diekstraksi.
Perintah kontainer dijalankan dari direktori pementasan, di mana kode sumber Anda diekstrak sebelum di-deploy ke server aplikasi. Setiap perubahan yang Anda buat untuk kode sumber Anda di direktori pementasan dengan perintah kontainer akan disertakan ketika sumber di-deploy ke lokasi akhir.
Untuk memecahkan masalah dengan perintah kontainer, Anda dapat menemukan output-nya di log instans.
Gunakan opsi leader_only
hanya untuk menjalankan perintah pada satu instans, atau mengonfigurasi test
hanya untuk menjalankan perintah ketika perintah pengujian dievaluasi true
. Perintah kontainer khusus pemimpin hanya dijalankan selama pembuatan dan penerapan lingkungan, sedangkan perintah dan operasi penyesuaian server lain dilakukan setiap kali sebuah instans ditetapkan atau diperbarui. Perintah container khusus pemimpin tidak dijalankan karena perubahan konfigurasi peluncuran, seperti perubahan pada AMI Id atau tipe instance.
Sintaksis
container_commands:
name of container_command
:
command: command to run
Opsi
command
-
Sebuah string atau array string yang akan dijalankan.
env
-
(Opsional) Atur variabel lingkungan sebelum menjalankan perintah, menimpa nilai yang ada.
cwd
-
(Opsional) Direktori kerja. Secara default, ini adalah direktori persiapan aplikasi unzip.
leader_only
-
(Opsional) Hanya jalankan perintah pada satu instans yang dipilih oleh Elastic Beanstalk. Perintah kontainer khusus pemimpin dijalankan sebelum perintah kontainer lainnya. Sebuah perintah bisa ditujukan khusus untuk pemimpin atau memiliki
test
, tetapi tidak keduanya (leader_only
diutamakan). test
-
(Opsional) Jalankan perintah pengujian yang harus mengembalikan
true
untuk menjalankan perintah kontainer. Sebuah perintah bisa ditujukan khusus untuk pemimpin atau memilikitest
, tetapi tidak keduanya (leader_only
diutamakan). ignoreErrors
-
(Opsional) Jangan gagalkan penerapan jika perintah kontainer mengembalikan nilai selain 0 (sukses). Atur ke
true
untuk mengaktifkan. waitAfterCompletion
-
(Opsional) Menunggu beberapa detik setelah perintah selesai sebelum menjalankan perintah berikutnya. Jika sistem memerlukan reboot setelah perintah selesai, sistem reboot setelah jumlah waktu yang ditentukan berlalu. Jika sistem melakukan reboot sebagai hasil dari suatu perintah, Elastic Beanstalk akan pulih ke titik setelah perintah dalam file konfigurasi. Nilai default adalah
60
detik. Anda juga dapat menentukanforever
, tetapi sistem harus melakukan reboot sebelum Anda dapat menjalankan perintah lain.
Contoh
Contoh berikut menyimpan output dari perintah set
ke file yang ditentukan. Elastic Beanstalk menjalankan perintah pada satu instans, dan melakukan reboot pada instans segera setelah perintah selesai.
container_commands:
foo:
command: set > c:\\myapp\\set.txt
leader_only: true
waitAfterCompletion: 0