Tải lên nguồn WordPress

Bây giờ, bạn sẽ chuẩn bị và tải nội dung nguồn của mình lên một vị trí mà từ đó CodeDeploy có thể triển khai nội dung đó. Hướng dẫn sau đây chỉ cho bạn cách cung cấp bộ chứa Amazon S3, chuẩn bị các tệp của bản sửa đổi ứng dụng cho bộ chứa, nhóm các tệp của bản sửa đổi, sau đó đẩy bản sửa đổi vào bộ chứa

Mặc dù nó không được đề cập trong hướng dẫn này, nhưng bạn có thể sử dụng CodeDeploy để triển khai các ứng dụng từ kho GitHub cho các phiên bản. Để biết thêm thông tin, hãy xem Tích hợp CodeDeploy với GitHub

Tạo bộ chứa hoặc bộ chứa lưu trữ trong Amazon S3—hoặc sử dụng bộ chứa hiện có. Đảm bảo rằng bạn có thể tải bản sửa đổi lên bộ chứa và các phiên bản Amazon EC2 được sử dụng trong quá trình triển khai có thể tải bản sửa đổi xuống từ bộ chứa

Bạn có thể sử dụng AWS CLI, bảng điều khiển Amazon S3 hoặc API Amazon S3 để tạo bộ chứa Amazon S3. Sau khi bạn tạo nhóm, hãy đảm bảo cấp quyền truy cập cho nhóm và người dùng IAM của bạn

Tên nhóm phải là duy nhất trên Amazon S3 cho tất cả tài khoản AWS. Nếu bạn không thể sử dụng

{
    "Statement": [
        {
            "Action": [
                "s3:PutObject"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::codedeploydemobucket/*",
            "Principal": {
                "AWS": [
                    "111122223333"
                ]
            }
        }
    ]
}
5, hãy thử một tên nhóm khác, chẳng hạn như
{
    "Statement": [
        {
            "Action": [
                "s3:PutObject"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::codedeploydemobucket/*",
            "Principal": {
                "AWS": [
                    "111122223333"
                ]
            }
        }
    ]
}
5 theo sau là dấu gạch ngang và tên viết tắt của bạn hoặc một số mã định danh duy nhất khác. Sau đó, đảm bảo thay thế tên bộ chứa của bạn cho
{
    "Statement": [
        {
            "Action": [
                "s3:PutObject"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::codedeploydemobucket/*",
            "Principal": {
                "AWS": [
                    "111122223333"
                ]
            }
        }
    ]
}
5 ở bất cứ nơi nào bạn nhìn thấy nó trong suốt hướng dẫn này

Bộ chứa Amazon S3 phải được tạo trong cùng khu vực AWS nơi các phiên bản Amazon EC2 mục tiêu của bạn được khởi chạy. Ví dụ: nếu bạn tạo nhóm ở Miền Đông Hoa Kỳ (N. Virginia), thì các phiên bản Amazon EC2 mục tiêu của bạn phải được khởi chạy ở Miền Đông Hoa Kỳ (N. Vùng Virginia)

Gọi lệnh mb để tạo bộ chứa Amazon S3 có tên là

{
    "Statement": [
        {
            "Action": [
                "s3:PutObject"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::codedeploydemobucket/*",
            "Principal": {
                "AWS": [
                    "111122223333"
                ]
            }
        }
    ]
}
5

aws s3 mb s3://codedeploydemobucket

  1. Mở bảng điều khiển Amazon S3 tại https. // bảng điều khiển. aws. amazon. com/s3/

  2. Trong bảng điều khiển Amazon S3, chọn Tạo bộ chứa

  3. Trong hộp Tên bộ chứa, hãy nhập tên cho bộ chứa

  4. Trong danh sách Khu vực, hãy chọn khu vực đích rồi chọn Tạo

Bạn phải có quyền tải lên bộ chứa Amazon S3. Bạn có thể chỉ định các quyền này thông qua chính sách bộ chứa Amazon S3. Ví dụ: trong chính sách bộ chứa Amazon S3 sau đây, việc sử dụng ký tự đại diện (*) cho phép tài khoản AWS

{
    "Statement": [
        {
            "Action": [
                "s3:PutObject"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::codedeploydemobucket/*",
            "Principal": {
                "AWS": [
                    "111122223333"
                ]
            }
        }
    ]
}
1 tải tệp lên bất kỳ thư mục nào trong bộ chứa Amazon S3 có tên là
{
    "Statement": [
        {
            "Action": [
                "s3:PutObject"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::codedeploydemobucket/*",
            "Principal": {
                "AWS": [
                    "111122223333"
                ]
            }
        }
    ]
}
5

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

Để xem ID tài khoản AWS của bạn, hãy xem Tìm ID tài khoản AWS của bạn

Bây giờ là thời điểm thích hợp để xác minh bộ chứa Amazon S3 sẽ cho phép các yêu cầu tải xuống từ mỗi phiên bản Amazon EC2 tham gia. Bạn có thể chỉ định điều này thông qua chính sách bộ chứa Amazon S3. Ví dụ: trong chính sách bộ chứa Amazon S3 sau đây, việc sử dụng ký tự đại diện (*) cho phép mọi phiên bản Amazon EC2 có cấu hình phiên bản IAM đính kèm chứa ARN

{
    "Statement": [
        {
            "Action": [
                "s3:PutObject"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::codedeploydemobucket/*",
            "Principal": {
                "AWS": [
                    "111122223333"
                ]
            }
        }
    ]
}
3 tải xuống các tệp từ bất kỳ thư mục nào trong bộ chứa Amazon S3 có tên
{
    "Statement": [
        {
            "Action": [
                "s3:PutObject"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::codedeploydemobucket/*",
            "Principal": {
                "AWS": [
                    "111122223333"
                ]
            }
        }
    ]
}
5

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

Để biết thông tin về cách tạo và đính kèm chính sách bộ chứa Amazon S3, hãy xem Ví dụ về chính sách bộ chứa

Để biết thông tin về cách tạo và đính kèm chính sách IAM, hãy xem Làm việc với chính sách

Đảm bảo các tệp ứng dụng WordPress, tệp AppSpec và tập lệnh được sắp xếp trên máy phát triển của bạn tương tự như sau

/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...)

Nhóm các tệp của ứng dụng vào một tệp lưu trữ duy nhất và đẩy tệp lưu trữ

Nhóm các tệp ứng dụng WordPress và tệp AppSpec vào một tệp lưu trữ (được gọi là bản sửa đổi ứng dụng)

Bạn có thể bị tính phí khi lưu trữ các đối tượng trong một nhóm và chuyển các bản sửa đổi ứng dụng vào và ra khỏi nhóm. Để biết thêm thông tin, xem giá Amazon S3

  1. Trên máy phát triển, chuyển sang thư mục lưu trữ các tệp

    cd /tmp/WordPress

    Nếu bạn không chuyển sang thư mục này, thì gói tệp sẽ bắt đầu tại thư mục hiện tại của bạn. Ví dụ: nếu thư mục hiện tại của bạn là

    {
        "Statement": [
            {
                "Action": [
                    "s3:PutObject"
                ],
                "Effect": "Allow",
                "Resource": "arn:aws:s3:::codedeploydemobucket/*",
                "Principal": {
                    "AWS": [
                        "111122223333"
                    ]
                }
            }
        ]
    }
    5 thay vì
    {
        "Statement": [
            {
                "Action": [
                    "s3:PutObject"
                ],
                "Effect": "Allow",
                "Resource": "arn:aws:s3:::codedeploydemobucket/*",
                "Principal": {
                    "AWS": [
                        "111122223333"
                    ]
                }
            }
        ]
    }
    6, thì nhóm sẽ bắt đầu với các tệp và thư mục con trong thư mục
    {
        "Statement": [
            {
                "Action": [
                    "s3:PutObject"
                ],
                "Effect": "Allow",
                "Resource": "arn:aws:s3:::codedeploydemobucket/*",
                "Principal": {
                    "AWS": [
                        "111122223333"
                    ]
                }
            }
        ]
    }
    7, có thể bao gồm nhiều hơn thư mục con
    {
        "Statement": [
            {
                "Action": [
                    "s3:PutObject"
                ],
                "Effect": "Allow",
                "Resource": "arn:aws:s3:::codedeploydemobucket/*",
                "Principal": {
                    "AWS": [
                        "111122223333"
                    ]
                }
            }
        ]
    }
    8

  2. Gọi lệnh tạo ứng dụng để đăng ký ứng dụng mới có tên

    {
        "Statement": [
            {
                "Action": [
                    "s3:PutObject"
                ],
                "Effect": "Allow",
                "Resource": "arn:aws:s3:::codedeploydemobucket/*",
                "Principal": {
                    "AWS": [
                        "111122223333"
                    ]
                }
            }
        ]
    }
    9

    {
        "Statement": [
            {
                "Action": [
                    "s3:PutObject"
                ],
                "Effect": "Allow",
                "Resource": "arn:aws:s3:::codedeploydemobucket/*",
                "Principal": {
                    "AWS": [
                        "111122223333"
                    ]
                }
            }
        ]
    }
    2
  3. Gọi lệnh đẩy CodeDeploy để nhóm các tệp lại với nhau, tải các bản sửa đổi lên Amazon S3 và đăng ký thông tin với CodeDeploy về bản sửa đổi đã tải lên, tất cả chỉ trong một thao tác

    {
        "Statement": [
            {
                "Action": [
                    "s3:PutObject"
                ],
                "Effect": "Allow",
                "Resource": "arn:aws:s3:::codedeploydemobucket/*",
                "Principal": {
                    "AWS": [
                        "111122223333"
                    ]
                }
            }
        ]
    }
    3

    Lệnh này nhóm các tệp từ thư mục hiện tại (không bao gồm bất kỳ tệp ẩn nào) vào một tệp lưu trữ duy nhất có tên là

    {
        "Statement": [
            {
                "Action": [
                    "s3:Get*",
                    "s3:List*"
                ],
                "Effect": "Allow",
                "Resource": "arn:aws:s3:::codedeploydemobucket/*",
                "Principal": {
                    "AWS": [
                        "arn:aws:iam::444455556666:role/CodeDeployDemo"
                    ]
                }
            }
        ]
    }
    0, tải bản sửa đổi lên bộ chứa
    {
        "Statement": [
            {
                "Action": [
                    "s3:PutObject"
                ],
                "Effect": "Allow",
                "Resource": "arn:aws:s3:::codedeploydemobucket/*",
                "Principal": {
                    "AWS": [
                        "111122223333"
                    ]
                }
            }
        ]
    }
    5 và đăng ký thông tin với CodeDeploy về bản sửa đổi đã tải lên

    Tôi có thể tải HTML của riêng mình lên WordPress không?

    Tải tệp HTML lên WordPress rất đơn giản và có ba cách để thực hiện. Trước tiên, bạn có thể tải tệp HTML lên bảng điều khiển WordPress của mình. Phương pháp thứ hai là sử dụng ứng dụng khách FTP để truyền các tệp lớn. Phương pháp thứ ba là thêm các trang HTML thông qua cPanel

    Tôi có thể tải lên plugin miễn phí trong WordPress không?

    Các loại tệp tải lên theo WPForms .