Langkah 3: Unggah WordPress aplikasi Anda ke Amazon S3 - AWS CodeDeploy

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

Langkah 3: Unggah WordPress aplikasi Anda ke Amazon S3

Sekarang Anda akan mempersiapkan dan mengunggah konten sumber Anda ke lokasi yang CodeDeploy dapat menyebarkannya. Petunjuk berikut menunjukkan cara menyediakan bucket Amazon S3, menyiapkan file revisi aplikasi untuk bucket, menggabungkan file revisi, lalu mendorong revisi ke bucket.

catatan

Meskipun tidak tercakup dalam tutorial ini, Anda dapat menggunakan CodeDeploy untuk menyebarkan aplikasi dari GitHub repositori ke instance. Untuk informasi selengkapnya, lihat Integrasi dengan CodeDeploy GitHub.

Menyediakan bucket Amazon S3

Buat wadah penyimpanan atau bucket di Amazon S3—atau gunakan bucket yang sudah ada. Pastikan Anda dapat mengunggah revisi ke bucket dan instans Amazon EC2 yang digunakan dalam penerapan dapat mengunduh revisi dari bucket.

Anda dapat menggunakan AWS CLI, konsol Amazon S3, atau API Amazon S3 untuk membuat bucket Amazon S3. Setelah Anda membuat bucket, pastikan untuk memberikan izin akses ke bucket dan AWS akun Anda.

catatan

Nama bucket harus unik di Amazon S3 untuk semua AWS akun. Jika Anda tidak dapat menggunakannyaDOC-EXAMPLE-BUCKET, coba nama bucket yang berbeda, seperti DOC-EXAMPLE-BUCKET diikuti dengan tanda hubung dan inisiasi Anda atau pengenal unik lainnya. Kemudian pastikan untuk mengganti nama bucket Anda ke DOC-EXAMPLE-BUCKET mana pun Anda melihatnya di seluruh tutorial ini.

Bucket Amazon S3 harus dibuat di AWS wilayah yang sama tempat instans Amazon EC2 target Anda diluncurkan. Misalnya, jika Anda membuat bucket di Wilayah AS Timur (Virginia N.), instans Amazon EC2 target Anda harus diluncurkan di Wilayah AS Timur (Virginia Utara).

Untuk membuat bucket Amazon S3 (CLI)

Panggil mb perintah untuk membuat bucket Amazon S3 bernama: DOC-EXAMPLE-BUCKET

aws s3 mb s3://DOC-EXAMPLE-BUCKET --region region

Untuk membuat bucket Amazon S3 (konsol)

  1. Buka konsol Amazon S3 di https://console.aws.amazon.com/s3/.

  2. Di konsol Amazon S3, pilih Buat ember.

  3. Di kotak nama Bucket, ketikkan nama untuk bucket.

  4. Dalam daftar Wilayah, pilih wilayah target, lalu pilih Buat.

Berikan izin ke bucket dan akun Amazon S3 AWS

Anda harus memiliki izin untuk mengunggah ke bucket Amazon S3. Anda dapat menentukan izin ini melalui kebijakan bucket Amazon S3. Misalnya, dalam kebijakan bucket Amazon S3 berikut, menggunakan karakter wildcard (*) memungkinkan AWS akun 111122223333 untuk mengunggah file ke direktori apa pun di bucket Amazon S3 bernama: DOC-EXAMPLE-BUCKET

{ "Statement": [ { "Action": [ "s3:PutObject" ], "Effect": "Allow", "Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*", "Principal": { "AWS": [ "111122223333" ] } } ] }

Untuk melihat ID AWS akun, lihat Menemukan ID AWS akun Anda.

Sekarang adalah saat yang tepat untuk memverifikasi bucket Amazon S3 akan memungkinkan permintaan unduhan dari setiap instans Amazon EC2 yang berpartisipasi. Anda dapat menentukan ini melalui kebijakan bucket Amazon S3. Misalnya, dalam kebijakan bucket Amazon S3 berikut, menggunakan karakter wildcard (*) memungkinkan instans Amazon EC2 dengan profil instans IAM terlampir yang berisi ARN arn:aws:iam::444455556666:role/CodeDeployDemo untuk mengunduh file dari direktori apa pun di bucket Amazon S3 bernama: DOC-EXAMPLE-BUCKET

{ "Statement": [ { "Action": [ "s3:Get*", "s3:List*" ], "Effect": "Allow", "Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*", "Principal": { "AWS": [ "arn:aws:iam::444455556666:role/CodeDeployDemo" ] } } ] }

Untuk informasi tentang cara membuat dan melampirkan kebijakan bucket Amazon S3, lihat contoh kebijakan Bucket.

Untuk informasi tentang cara membuat dan melampirkan kebijakan IAM, lihat Bekerja dengan kebijakan.

Siapkan file aplikasi untuk ember

Pastikan file WordPress aplikasi, AppSpec file, dan skrip diatur pada mesin pengembangan Anda mirip dengan yang berikut ini:

/tmp/ |--WordPress/ |-- appspec.yml |-- scripts/ | |-- change_permissions.sh | |-- create_test_db.sh | |-- install_dependencies.sh | |-- start_server.sh | |-- stop_server.sh |-- wp-admin/ | |-- (various files...) |-- wp-content/ | |-- (various files...) |-- wp-includes/ | |-- (various files...) |-- index.php |-- license.txt |-- readme.html |-- (various files ending with .php...)

Bundel file aplikasi ke dalam satu file arsip dan dorong file arsip

Bundel file WordPress aplikasi dan AppSpec file ke dalam file arsip (dikenal sebagai revisi aplikasi).

catatan

Anda mungkin dikenakan biaya untuk menyimpan objek dalam ember dan untuk mentransfer revisi aplikasi ke dalam dan keluar dari ember. Untuk informasi selengkapnya, lihat Harga Amazon S3.

  1. Pada mesin pengembangan, beralih ke folder tempat file disimpan:

    cd /tmp/WordPress
    catatan

    Jika Anda tidak beralih ke folder ini, maka bundling file akan dimulai di folder Anda saat ini. Misalnya, jika folder Anda saat ini /tmp bukan/tmp/WordPress, maka bundling akan dimulai dengan file dan subfolder di tmp folder, yang mungkin mencakup lebih dari subfolderWordPress.

  2. Panggil create-application perintah untuk mendaftarkan aplikasi baru bernamaWordPress_App:

    aws deploy create-application --application-name WordPress_App
  3. Panggil perintah CodeDeploy push untuk menggabungkan file bersama-sama, mengunggah revisi ke Amazon S3, dan mendaftarkan informasi tentang revisi CodeDeploy yang diunggah, semuanya dalam satu tindakan.

    aws deploy push \ --application-name WordPress_App \ --s3-location s3://DOC-EXAMPLE-BUCKET/WordPressApp.zip \ --ignore-hidden-files

    Perintah ini menggabungkan file dari direktori saat ini (tidak termasuk file tersembunyi) ke dalam satu file arsip bernamaWordPressApp.zip, mengunggah revisi ke DOC-EXAMPLE-BUCKET bucket, dan mendaftarkan informasi tentang revisi yang CodeDeploy diunggah.