Bootstrap không hoạt động sau khi triển khai

Tìm hiểu cách sử dụng các tập lệnh npm đi kèm của Bootstrap để xây dựng tài liệu, biên dịch mã nguồn, chạy thử nghiệm, v.v.

Bootstrap sử dụng tập lệnh NPM cho hệ thống xây dựng của nó. gói của chúng tôi. json bao gồm các phương thức thuận tiện để làm việc với khung, bao gồm biên dịch mã, chạy thử nghiệm, v.v.

Để sử dụng hệ thống xây dựng của chúng tôi và chạy tài liệu của chúng tôi cục bộ, bạn sẽ cần một bản sao các tệp nguồn của Bootstrap và Node. Thực hiện theo các bước sau và bạn sẽ sẵn sàng khuấy động

  1. Tải xuống và cài đặt Nút. js, mà chúng tôi sử dụng để quản lý các phụ thuộc của mình
  2. Điều hướng đến thư mục gốc /bootstrap và chạy npm install để cài đặt các phụ thuộc cục bộ của chúng tôi được liệt kê trong gói. json
  3. Cài đặt Ruby, cài đặt Bundler với gem install bundler và cuối cùng chạy bundle install. Điều này sẽ cài đặt tất cả các phụ thuộc của Ruby, chẳng hạn như Jekyll và plugin
    • người dùng Windows. Đọc hướng dẫn này để thiết lập và chạy Jekyll mà không gặp sự cố

Khi hoàn thành, bạn sẽ có thể chạy các lệnh khác nhau được cung cấp từ dòng lệnh

Sử dụng tập lệnh NPM

gói của chúng tôi. json bao gồm các lệnh và tác vụ sau

TaskDescriptionnpm run distnpm run dist tạo thư mục /dist chứa các tệp đã biên dịch. Sử dụng Sass, Autoprefixer và UglifyJS. npm testGiống như npm run dist và nó chạy thử nghiệm cục bộnpm run docsXây dựng và tạo CSS và JavaScript cho tài liệu. Sau đó, bạn có thể chạy tài liệu cục bộ qua npm install0

Chạy npm install1 để xem tất cả các tập lệnh npm

tự động sửa lỗi

Bootstrap sử dụng Autoprefixer (có trong quy trình xây dựng của chúng tôi) để tự động thêm tiền tố của nhà cung cấp vào một số thuộc tính CSS khi xây dựng. Làm như vậy giúp chúng tôi tiết kiệm thời gian và viết mã bằng cách cho phép chúng tôi viết các phần chính của CSS một lần duy nhất trong khi loại bỏ nhu cầu sử dụng mixin của nhà cung cấp như các mixin được tìm thấy trong v3

Chúng tôi duy trì danh sách các trình duyệt được hỗ trợ thông qua Autoprefixer trong một tệp riêng trong kho lưu trữ GitHub của chúng tôi. Xem/gói. json để biết chi tiết

Tài liệu địa phương

Việc chạy tài liệu của chúng tôi tại địa phương yêu cầu sử dụng Jekyll, một trình tạo trang web tĩnh khá linh hoạt cung cấp cho chúng tôi. cơ bản bao gồm, các tệp, mẫu dựa trên Markdown, v.v. Đây là cách để bắt đầu

  1. Chạy qua phần trên để cài đặt Jekyll (trình tạo trang web) và các phần phụ thuộc khác của Ruby với bundle install
  2. Từ thư mục gốc /bootstrap, hãy chạy npm install0 trong dòng lệnh
  3. Mở npm install5 trong trình duyệt của bạn và voilà

Tìm hiểu thêm về cách sử dụng Jekyll bằng cách đọc tài liệu của nó

Xử lý sự cố

Nếu bạn gặp sự cố khi cài đặt các phần phụ thuộc, hãy gỡ cài đặt tất cả các phiên bản phần phụ thuộc trước đó (toàn cầu và cục bộ). Sau đó, chạy lại npm install

Khi bạn triển khai ứng dụng Rails cho Heroku, bạn có thể ngạc nhiên khi thấy rằng ứng dụng của mình không có bất kỳ kiểu nào mà bạn có thể thấy cục bộ

Kiểm tra tệp application.html.erb bên trong app/views/layouts và chú ý cách bạn đang nhập biểu định kiểu của mình

Bootstrap không hoạt động sau khi triển khai

Đổi _______ 91 _______ thành _______ 92 _______. Triển khai lại ứng dụng của bạn và nó sẽ hoạt động

Bootstrap không hoạt động sau khi triển khai

Chúng tôi sử dụng _pack_tag để nhập CSS vào Webpack


Bootstrap không hoạt động sau khi triển khai

Viết bởi Simon Peter Debbarma, người hơi quan tâm đến Công thức 1, CSGO, One Piece và các chương trình của Michael Schur. Bạn nên theo dõi anh ấy trên Twitter. Hoặc truy cập trang web của mình

Nếu có node_modules, thì phải có một bước xây dựng sẽ tự động giải nén các tệp và thêm các liên kết chính xác, nhưng bạn không tự thêm chúng vào chỉ mục. html
Nếu không có bản dựng, bạn chỉ cần sao chép/dán các tệp đó từ node_modules vào một số thư mục khác (và điều chỉnh đường dẫn cho phù hợp)
Hoặc sử dụng liên kết CDN

Đây là Hướng dẫn dành cho nhà phát triển AWS CDK v2. CDK v1 cũ hơn đã bắt đầu bảo trì vào ngày 1 tháng 6 năm 2022 và hiện sẽ chỉ nhận được các bản sửa lỗi và bản vá bảo mật quan trọng. Các tính năng mới sẽ được phát triển dành riêng cho CDK v2. Hỗ trợ cho CDK v1 sẽ kết thúc hoàn toàn vào ngày 1 tháng 6 năm 2023

Bootstrapping là quá trình cung cấp tài nguyên cho AWS CDK trước khi bạn có thể triển khai các ứng dụng AWS CDK vào môi trường AWS. (Môi trường AWS là sự kết hợp giữa tài khoản AWS và Khu vực)

Các tài nguyên này bao gồm bộ chứa Amazon S3 để lưu trữ tệp và vai trò IAM cấp các quyền cần thiết để thực hiện triển khai

Các tài nguyên cần thiết được xác định trong ngăn xếp AWS CloudFormation, được gọi là ngăn xếp bootstrap, thường được đặt tên là

cdk bootstrap aws://123456789012/us-east-1
cdk bootstrap 123456789012/us-east-1 123456789012/us-west-1
8. Giống như bất kỳ ngăn xếp AWS CloudFormation nào, nó xuất hiện trong bảng điều khiển AWS CloudFormation sau khi được triển khai

CDK v2 sử dụng mẫu bootstrap có tên là mẫu hiện đại. Mẫu kế thừa từ CDK v1 không được hỗ trợ trong v2

Môi trường độc lập. Nếu bạn muốn triển khai trên nhiều môi trường (các tài khoản AWS khác nhau hoặc các Khu vực khác nhau trong cùng một tài khoản), mỗi môi trường phải được khởi động riêng

Bạn có thể phải chịu phí AWS đối với dữ liệu được lưu trữ trong tài nguyên khởi động

Các phiên bản trước của mẫu bootstrap đã tạo khóa AWS KMS trong mỗi môi trường bootstrap theo mặc định. Để tránh bị tính phí cho khóa KMS, hãy khởi động lại các môi trường này bằng cách sử dụng

cdk bootstrap aws://123456789012/us-east-1
cdk bootstrap 123456789012/us-east-1 123456789012/us-west-1
9. Mặc định hiện tại là không có khóa KMS, giúp tránh các khoản phí này

Nếu bạn tìm cách triển khai một ứng dụng AWS CDK vào một môi trường không có các tài nguyên cần thiết, một thông báo lỗi sẽ nhắc bạn khởi động lại môi trường

Nếu bạn đang sử dụng CDK Pipelines để triển khai vào môi trường của tài khoản khác và bạn nhận được thông báo như sau

Policy contains a statement with one or more invalid principals

Thông báo lỗi này có nghĩa là vai trò IAM thích hợp không tồn tại trong môi trường khác. Nguyên nhân rất có thể là do thiếu bootstrapping

Không xóa và tạo lại ngăn xếp bootstrap của tài khoản nếu bạn đang sử dụng CDK Pipelines để triển khai vào tài khoản đó. Đường ống sẽ ngừng hoạt động. Để cập nhật ngăn xếp bootstrap lên phiên bản mới, thay vào đó hãy chạy lại

cdk bootstrap --profile prod
0 để cập nhật ngăn xếp bootstrap tại chỗ

Làm thế nào để khởi động

Bootstrapping là triển khai mẫu AWS CloudFormation cho một môi trường AWS cụ thể (tài khoản và Khu vực). Mẫu bootstrapping chấp nhận các tham số tùy chỉnh một số khía cạnh của tài nguyên bootstrapping (xem ). Vì vậy, bạn có thể bootstrap theo một trong hai cách

  • Sử dụng lệnh cdk bootstrap của AWS CDK Toolkit. Đây là phương pháp đơn giản nhất và hoạt động tốt nếu bạn chỉ có một vài môi trường để khởi động

  • Triển khai mẫu do AWS CDK Toolkit cung cấp bằng một công cụ triển khai AWS CloudFormation khác. Điều này cho phép bạn sử dụng AWS CloudFormation StackSets hoặc AWS Control Tower cũng như bảng điều khiển AWS CloudFormation hoặc AWS CLI. Bạn có thể thực hiện các sửa đổi nhỏ đối với mẫu trước khi triển khai. Cách tiếp cận này linh hoạt hơn và phù hợp cho việc triển khai quy mô lớn

Không phải là lỗi khi khởi động một môi trường nhiều lần. Nếu môi trường mà bạn khởi động đã được khởi động, ngăn xếp khởi động của môi trường đó sẽ được nâng cấp nếu cần. Nếu không, không có gì xảy ra

Bootstrapping với AWS CDK Toolkit

Sử dụng lệnh

cdk bootstrap --profile prod
0 để khởi động một hoặc nhiều môi trường AWS. Ở dạng cơ bản, lệnh này khởi động một hoặc nhiều môi trường AWS được chỉ định (hai, trong ví dụ này)

cdk bootstrap aws://ACCOUNT-NUMBER-1/REGION-1 aws://ACCOUNT-NUMBER-2/REGION-2 ...

Các ví dụ sau minh họa bootstrapping của một và hai môi trường tương ứng. (Cả hai đều sử dụng cùng một tài khoản AWS. ) Như được hiển thị trong ví dụ thứ hai, tiền tố

cdk bootstrap --profile prod
2 là tùy chọn khi chỉ định môi trường

cdk bootstrap aws://123456789012/us-east-1
cdk bootstrap 123456789012/us-east-1 123456789012/us-west-1

Bộ công cụ CDK luôn tổng hợp ứng dụng AWS CDK trong thư mục hiện tại. Nếu bạn không chỉ định ít nhất một môi trường trong lệnh

cdk bootstrap --profile prod
0, lệnh này sẽ khởi động tất cả các môi trường được tham chiếu trong ứng dụng

Nếu một ngăn xếp không phụ thuộc vào môi trường (có nghĩa là nó không có thuộc tính

cdk bootstrap --profile prod
4), thì môi trường của CDK sẽ được áp dụng để làm cho ngăn xếp cụ thể theo môi trường. Môi trường của CDK là môi trường được chỉ định bằng cách sử dụng --profile hoặc biến môi trường hoặc môi trường AWS mặc định nếu không. Môi trường đó sau đó được khởi động

Ví dụ: lệnh sau tổng hợp ứng dụng AWS CDK hiện tại bằng cách sử dụng cấu hình AWS

cdk bootstrap --profile prod
5, sau đó khởi động môi trường của nó

cdk bootstrap --profile prod

Bootstrapping từ mẫu AWS CloudFormation

AWS CDK bootstrapping được thực hiện bởi mẫu AWS CloudFormation. Để lấy một bản sao của mẫu này trong tệp

cdk bootstrap --profile prod
6, hãy chạy lệnh sau

macOS/Linux
cdk bootstrap --show-template > bootstrap-template.yaml
Windows

Trên Windows, PowerShell phải được sử dụng để duy trì mã hóa của mẫu

powershell "cdk bootstrap --show-template | Out-File -encoding utf8 bootstrap-template.yaml"

Mẫu cũng có sẵn trong kho lưu trữ AWS CDK GitHub

Triển khai mẫu này bằng cách sử dụng cdk bootstrap --template

cdk bootstrap --profile prod
7 hoặc cơ chế triển khai ưa thích của bạn cho các mẫu AWS CloudFormation. Ví dụ: lệnh sau triển khai mẫu bằng AWS CLI

macOS/Linux
aws cloudformation create-stack \
  --stack-name CDKToolkit \
  --template-body file://bootstrap-template.yaml
Windows
aws cloudformation create-stack ^
  --stack-name CDKToolkit ^
  --template-body file://bootstrap-template.yaml

mẫu khởi động

Như đã đề cập trước đó, AWS CDK v1 hỗ trợ hai mẫu khởi động, kế thừa và hiện đại. CDK v2 chỉ hỗ trợ mẫu hiện đại. Để tham khảo, đây là sự khác biệt cấp cao giữa hai mẫu này

FeatureLegacy (chỉ v1)Hiện đại (v1 và v2)Triển khai nhiều tài khoảnKhông được phépĐược phépQuyền AWS CloudFormationTriển khai bằng cách sử dụng quyền của người dùng hiện tại (được xác định bởi hồ sơ AWS, biến môi trường, v.v. )Triển khai bằng cách sử dụng các quyền được chỉ định khi ngăn xếp bootstrap được cung cấp (ví dụ: bằng cách sử dụng

cdk bootstrap --profile prod
8)Phiên bảnChỉ có một phiên bản ngăn xếp bootstrap có sẵn Ngăn xếp bootstrap được tạo phiên bản;

* Chúng tôi sẽ thêm các tài nguyên bổ sung vào mẫu bootstrap khi cần

Phải nâng cấp một môi trường được khởi động bằng cách sử dụng mẫu cũ để sử dụng mẫu hiện đại cho CDK v2 bằng cách khởi động lại. Triển khai lại tất cả các ứng dụng AWS CDK trong môi trường ít nhất một lần trước khi xóa bộ chứa cũ

Tùy chỉnh bootstrapping

Có hai cách để tùy chỉnh tài nguyên bootstrapping

  • Sử dụng tham số dòng lệnh với lệnh

    cdk bootstrap --profile prod
    0. Điều này cho phép bạn sửa đổi một số khía cạnh của mẫu

  • Sửa đổi mẫu bootstrap mặc định và tự triển khai nó. Điều này cho phép bạn kiểm soát hoàn toàn hơn đối với tài nguyên bootstrap

Các tùy chọn dòng lệnh sau đây, khi được sử dụng với cdk bootstrap của CDK Toolkit, cung cấp các điều chỉnh thường cần thiết cho mẫu bootstrapping

  • --bootstrap-bucket-name ghi đè tên của bộ chứa Amazon S3. Có thể yêu cầu thay đổi ứng dụng CDK của bạn (xem )

  • --bootstrap-kms-key-id ghi đè khóa AWS KMS được sử dụng để mã hóa bộ chứa S3

  • --cloudformation-execution-policies chỉ định ARN của các chính sách được quản lý sẽ được đính kèm với vai trò triển khai do AWS CloudFormation đảm nhận trong quá trình triển khai ngăn xếp của bạn. Theo mặc định, ngăn xếp được triển khai với đầy đủ quyền của quản trị viên bằng chính sách

    cdk bootstrap --show-template > bootstrap-template.yaml
    0

    Các ARN chính sách phải được chuyển dưới dạng một đối số chuỗi, với các ARN riêng lẻ được phân tách bằng dấu phẩy. Ví dụ

    --cloudformation-execution-policies "arn:aws:iam::aws:policy/AWSLambda_FullAccess,arn:aws:iam::aws:policy/AWSCodeDeployFullAccess".

    Để tránh lỗi triển khai, hãy đảm bảo các chính sách mà bạn chỉ định là đủ cho bất kỳ hoạt động triển khai nào bạn sẽ thực hiện trong môi trường đang được khởi động

  • --qualifier là một chuỗi được thêm vào tên của tất cả các tài nguyên trong ngăn xếp bootstrap. Vòng loại cho phép bạn tránh xung đột tên tài nguyên khi bạn cung cấp nhiều ngăn xếp bootstrap trong cùng một môi trường. Giá trị mặc định là

    cdk bootstrap --show-template > bootstrap-template.yaml
    1 (giá trị này không có ý nghĩa)

    Việc thay đổi vòng loại cũng yêu cầu ứng dụng CDK của bạn chuyển giá trị đã thay đổi tới bộ tổng hợp ngăn xếp. Để biết thêm thông tin, xem

  • --tags thêm một hoặc nhiều thẻ AWS CloudFormation vào ngăn xếp bootstrap

  • --trust liệt kê các tài khoản AWS có thể triển khai vào môi trường đang được khởi động

    Sử dụng cờ này khi khởi động môi trường mà Đường ống CDK trong môi trường khác sẽ triển khai vào. Tài khoản thực hiện bootstrapping luôn đáng tin cậy

  • --trust-for-lookup liệt kê các tài khoản AWS có thể tra cứu thông tin ngữ cảnh từ môi trường đang được khởi động

    Sử dụng cờ này để cấp cho tài khoản quyền tổng hợp các ngăn xếp sẽ được triển khai vào môi trường mà không thực sự cấp cho họ quyền triển khai trực tiếp các ngăn xếp đó

  • --termination-protection ngăn ngăn xếp bootstrap bị xóa. Để biết thêm thông tin, hãy xem Bảo vệ ngăn xếp khỏi bị xóa trong Hướng dẫn sử dụng AWS CloudFormation

Mẫu bootstrap hiện đại cấp một cách hiệu quả các quyền mà

cdk bootstrap --show-template > bootstrap-template.yaml
2 ngụ ý cho bất kỳ tài khoản AWS nào trong danh sách
cdk bootstrap --profile prod
8. Theo mặc định, điều này mở rộng quyền đọc và ghi vào bất kỳ tài nguyên nào trong tài khoản được khởi động. Đảm bảo định cấu hình ngăn xếp khởi động với các chính sách và tài khoản đáng tin cậy mà bạn cảm thấy thoải mái

Tùy chỉnh mẫu

Khi cần tùy chỉnh nhiều hơn khả năng mà bộ chuyển mạch Bộ công cụ AWS CDK có thể cung cấp, bạn có thể sửa đổi mẫu bootstrap cho phù hợp với nhu cầu của mình. Hãy nhớ rằng bạn có thể lấy mẫu bằng cách sử dụng cờ --show-template

cdk bootstrap --show-template

Bất kỳ sửa đổi nào bạn thực hiện phải tuân theo

Triển khai mẫu đã sửa đổi của bạn như được mô tả trong hoặc sử dụng cdk bootstrap --template

cdk bootstrap aws://ACCOUNT-NUMBER-1/REGION-1 aws://ACCOUNT-NUMBER-2/REGION-2 ...
0

Bộ tổng hợp ngăn xếp

Ứng dụng AWS CDK của bạn cần biết về các tài nguyên bootstrapping có sẵn để tổng hợp thành công ngăn xếp có thể triển khai. Trình tổng hợp ngăn xếp là một lớp AWS CDK kiểm soát cách tổng hợp mẫu của ngăn xếp. Điều này bao gồm cách nó sử dụng tài nguyên bootstrap (ví dụ: cách nó đề cập đến nội dung được lưu trữ trong bộ chứa bootstrap)

Bộ tổng hợp ngăn xếp tích hợp sẵn của AWS CDK có tên là

cdk bootstrap --show-template > bootstrap-template.yaml
4. Nó bao gồm khả năng triển khai nhiều tài khoản và triển khai Đường ống CDK

Bạn có thể chuyển bộ tổng hợp ngăn xếp vào ngăn xếp khi bạn khởi tạo nó bằng thuộc tính

cdk bootstrap --show-template > bootstrap-template.yaml
5

TypeScript
cdk bootstrap aws://ACCOUNT-NUMBER-1/REGION-1 aws://ACCOUNT-NUMBER-2/REGION-2 ...
1JavaScript
cdk bootstrap aws://ACCOUNT-NUMBER-1/REGION-1 aws://ACCOUNT-NUMBER-2/REGION-2 ...
1Python
cdk bootstrap aws://ACCOUNT-NUMBER-1/REGION-1 aws://ACCOUNT-NUMBER-2/REGION-2 ...
3Java
cdk bootstrap aws://ACCOUNT-NUMBER-1/REGION-1 aws://ACCOUNT-NUMBER-2/REGION-2 ...
4C#
cdk bootstrap aws://ACCOUNT-NUMBER-1/REGION-1 aws://ACCOUNT-NUMBER-2/REGION-2 ...
5

Nếu bạn không cung cấp thuộc tính

cdk bootstrap --show-template > bootstrap-template.yaml
5, thì
cdk bootstrap --show-template > bootstrap-template.yaml
4 được sử dụng

tùy chỉnh tổng hợp

Tùy thuộc vào những thay đổi bạn đã thực hiện đối với mẫu bootstrap, bạn cũng có thể cần tùy chỉnh tổng hợp.

cdk bootstrap --show-template > bootstrap-template.yaml
4 có thể được tùy chỉnh bằng cách sử dụng các thuộc tính được mô tả như sau

Nếu không có thuộc tính nào trong số này cung cấp các tùy chỉnh mà bạn yêu cầu, bạn có thể viết bộ tổng hợp của mình dưới dạng một lớp thực hiện

cdk bootstrap --show-template > bootstrap-template.yaml
9 (có lẽ xuất phát từ
cdk bootstrap --show-template > bootstrap-template.yaml
4)

Thay đổi vòng loại

Vòng loại được thêm vào tên của tài nguyên bootstrap để phân biệt tài nguyên trong ngăn xếp bootstrap riêng biệt. Để triển khai hai phiên bản khác nhau của ngăn xếp bootstrap trong cùng một môi trường (tài khoản AWS và Khu vực), các ngăn xếp phải có các vòng loại khác nhau

Tính năng này nhằm mục đích cách ly tên giữa các lần kiểm tra tự động của chính CDK. Trừ khi bạn có thể thu hẹp phạm vi rất chính xác các quyền IAM được cấp cho vai trò thực thi AWS CloudFormation, nếu không sẽ không có lợi ích cách ly quyền nào khi có hai ngăn xếp bootstrap khác nhau trong một tài khoản. Do đó, thường không cần thay đổi giá trị này

Để thay đổi bộ định tính, hãy định cấu hình

cdk bootstrap --show-template > bootstrap-template.yaml
4 bằng cách khởi tạo bộ tổng hợp với thuộc tính

TypeScript
cdk bootstrap aws://ACCOUNT-NUMBER-1/REGION-1 aws://ACCOUNT-NUMBER-2/REGION-2 ...
6JavaScript
cdk bootstrap aws://ACCOUNT-NUMBER-1/REGION-1 aws://ACCOUNT-NUMBER-2/REGION-2 ...
7Python
cdk bootstrap aws://ACCOUNT-NUMBER-1/REGION-1 aws://ACCOUNT-NUMBER-2/REGION-2 ...
8Java
cdk bootstrap aws://ACCOUNT-NUMBER-1/REGION-1 aws://ACCOUNT-NUMBER-2/REGION-2 ...
9C#
cdk bootstrap aws://123456789012/us-east-1
cdk bootstrap 123456789012/us-east-1 123456789012/us-west-1
0

Hoặc bằng cách định cấu hình từ hạn định làm khóa ngữ cảnh trong

powershell "cdk bootstrap --show-template | Out-File -encoding utf8 bootstrap-template.yaml"
2

cdk bootstrap aws://123456789012/us-east-1
cdk bootstrap 123456789012/us-east-1 123456789012/us-west-1
1

Thay đổi tên tài nguyên

Tất cả các thuộc tính

cdk bootstrap --show-template > bootstrap-template.yaml
4 khác liên quan đến tên của các tài nguyên trong mẫu bootstrapping. Bạn chỉ cần cung cấp bất kỳ thuộc tính nào trong số này nếu bạn đã sửa đổi mẫu bootstrap và thay đổi tên tài nguyên hoặc sơ đồ đặt tên

Tất cả các tài sản chấp nhận giữ chỗ đặc biệt

powershell "cdk bootstrap --show-template | Out-File -encoding utf8 bootstrap-template.yaml"
4,
powershell "cdk bootstrap --show-template | Out-File -encoding utf8 bootstrap-template.yaml"
5,
powershell "cdk bootstrap --show-template | Out-File -encoding utf8 bootstrap-template.yaml"
6 và
powershell "cdk bootstrap --show-template | Out-File -encoding utf8 bootstrap-template.yaml"
7. Các trình giữ chỗ này được thay thế bằng các giá trị của tham số
powershell "cdk bootstrap --show-template | Out-File -encoding utf8 bootstrap-template.yaml"
8 và phân vùng AWS, ID tài khoản và các giá trị Khu vực tương ứng cho môi trường của ngăn xếp

Ví dụ sau đây cho thấy các thuộc tính được sử dụng phổ biến nhất cho

cdk bootstrap --show-template > bootstrap-template.yaml
4 cùng với các giá trị mặc định của chúng, như thể bạn đang khởi tạo bộ tổng hợp. Để biết danh sách đầy đủ, hãy xem

TypeScript
cdk bootstrap aws://123456789012/us-east-1
cdk bootstrap 123456789012/us-east-1 123456789012/us-west-1
2JavaScript
cdk bootstrap aws://123456789012/us-east-1
cdk bootstrap 123456789012/us-east-1 123456789012/us-west-1
3Python
cdk bootstrap aws://123456789012/us-east-1
cdk bootstrap 123456789012/us-east-1 123456789012/us-west-1
4Java
cdk bootstrap aws://123456789012/us-east-1
cdk bootstrap 123456789012/us-east-1 123456789012/us-west-1
5C#
cdk bootstrap aws://123456789012/us-east-1
cdk bootstrap 123456789012/us-east-1 123456789012/us-west-1
6

Hợp đồng mẫu bootstrapping

Các yêu cầu của ngăn xếp bootstrapping phụ thuộc vào bộ tổng hợp ngăn xếp được sử dụng. Nếu bạn viết trình tổng hợp ngăn xếp của riêng mình, bạn có toàn quyền kiểm soát các tài nguyên bootstrap mà trình tổng hợp của bạn yêu cầu và cách trình tổng hợp tìm thấy chúng

Phần này mô tả những kỳ vọng mà

cdk bootstrap --show-template > bootstrap-template.yaml
4 có đối với mẫu bootstrapping

lập phiên bản

Mẫu phải chứa tài nguyên để tạo tham số SSM có tên nổi tiếng và đầu ra để phản ánh phiên bản của mẫu

cdk bootstrap aws://123456789012/us-east-1
cdk bootstrap 123456789012/us-east-1 123456789012/us-west-1
7

vai trò

cdk bootstrap --show-template > bootstrap-template.yaml
4 yêu cầu năm vai trò IAM cho năm mục đích khác nhau. Nếu bạn không sử dụng vai trò mặc định, bạn phải báo cho bộ tổng hợp biết ARN của vai trò bạn muốn sử dụng

Các vai trò như sau

  • Vai trò triển khai do Bộ công cụ AWS CDK và AWS CodePipeline đảm nhận để triển khai vào một môi trường.

    aws cloudformation create-stack \
      --stack-name CDKToolkit \
      --template-body file://bootstrap-template.yaml
    2 của nó kiểm soát những người có thể triển khai vào môi trường. Trong mẫu, bạn có thể thấy các quyền mà vai trò này cần

  • Vai trò tra cứu do AWS CDK Toolkit đảm nhận để thực hiện tra cứu ngữ cảnh trong một môi trường.

    aws cloudformation create-stack \
      --stack-name CDKToolkit \
      --template-body file://bootstrap-template.yaml
    2 của nó kiểm soát những người có thể triển khai vào môi trường. Bạn có thể xem các quyền mà vai trò này cần trong mẫu

  • Vai trò xuất bản tệp và vai trò xuất bản hình ảnh do Bộ công cụ AWS CDK và các dự án AWS CodeBuild đảm nhận để xuất bản nội dung vào một môi trường. Chúng được sử dụng để ghi vào bộ chứa S3 và kho lưu trữ ECR, tương ứng. Các vai trò này yêu cầu quyền ghi vào các tài nguyên này

  • Vai trò thực thi AWS CloudFormation được chuyển cho AWS CloudFormation để thực hiện triển khai thực tế. Quyền của nó là quyền mà việc triển khai sẽ thực thi dưới. Các quyền được chuyển đến ngăn xếp dưới dạng tham số liệt kê các ARN chính sách được quản lý

đầu ra

AWS CDK Toolkit yêu cầu các đầu ra CloudFormation sau tồn tại trên ngăn xếp bootstrap

  • aws cloudformation create-stack \
      --stack-name CDKToolkit \
      --template-body file://bootstrap-template.yaml
    4. tên của nhóm nội dung tệp

  • aws cloudformation create-stack \
      --stack-name CDKToolkit \
      --template-body file://bootstrap-template.yaml
    5. nhóm nội dung tệp ở định dạng tên miền

  • aws cloudformation create-stack \
      --stack-name CDKToolkit \
      --template-body file://bootstrap-template.yaml
    6. phiên bản hiện tại của ngăn xếp bootstrap

lịch sử mẫu

Mẫu bootstrap được tạo phiên bản và phát triển theo thời gian với chính AWS CDK. Nếu bạn cung cấp mẫu bootstrap của riêng mình, hãy cập nhật mẫu đó bằng mẫu mặc định chính tắc. Bạn muốn đảm bảo rằng mẫu của mình tiếp tục hoạt động với tất cả các tính năng của CDK

Phần này chứa danh sách các thay đổi được thực hiện trong mỗi phiên bản

Phiên bản mẫuPhiên bản AWS CDKThay đổi11. 40. 0Phiên bản ban đầu của mẫu với Bộ chứa, Khóa, Kho lưu trữ và Vai trò. 21. 45. 0Chia vai trò xuất bản nội dung thành các vai trò xuất bản tệp và hình ảnh riêng biệt. 31. 46. 0Thêm xuất khẩu

aws cloudformation create-stack \
  --stack-name CDKToolkit \
  --template-body file://bootstrap-template.yaml
7 để có thể thêm quyền giải mã cho người tiêu dùng nội dung. 41. 61. 0Quyền KMS của AWS hiện ẩn thông qua Amazon S3 và không còn yêu cầu
aws cloudformation create-stack \
  --stack-name CDKToolkit \
  --template-body file://bootstrap-template.yaml
8. Thêm tham số
aws cloudformation create-stack \
  --stack-name CDKToolkit \
  --template-body file://bootstrap-template.yaml
9 SSM để có thể xác minh phiên bản ngăn xếp bootstrap mà không cần biết tên ngăn xếp. 51. 87. 0Vai trò triển khai có thể đọc tham số SSM. 61. 108. 0Thêm vai trò tra cứu tách biệt với vai trò triển khai. 61. 109. 0Đính kèm thẻ
aws cloudformation create-stack ^
  --stack-name CDKToolkit ^
  --template-body file://bootstrap-template.yaml
0 vào các vai trò triển khai, xuất bản tệp và xuất bản hình ảnh. 71. 110. 0Vai trò triển khai không còn có thể đọc trực tiếp các Nhóm trong tài khoản đích. (Tuy nhiên, vai trò này thực sự là quản trị viên và luôn có thể sử dụng các quyền AWS CloudFormation của mình để làm cho bộ chứa có thể đọc được bằng mọi cách). 81. 114. 0Vai trò tra cứu có đầy đủ quyền chỉ đọc đối với môi trường đích và cũng có thẻ
aws cloudformation create-stack ^
  --stack-name CDKToolkit ^
  --template-body file://bootstrap-template.yaml
0. 92. 1. 0Khắc phục nội dung tải lên Amazon S3 bị từ chối bởi SCP mã hóa thường được tham chiếu. 102. 4. 0Amazon ECR ScanOnPush hiện được bật theo mặc định. 112. 18. 0Thêm chính sách cho phép Lambda lấy từ các kho lưu trữ Amazon ECR để nó tồn tại sau quá trình khởi động lại. 122. 20. 0Thêm hỗ trợ nhập cdk thử nghiệm. 132. 25. 0Làm cho hình ảnh bộ chứa trong kho lưu trữ Amazon ECR do bootstrap tạo thành không thay đổi. 142. 34. 0Tắt tính năng quét hình ảnh Amazon ECR ở cấp độ kho lưu trữ theo mặc định để cho phép khởi động Các khu vực không hỗ trợ tính năng quét hình ảnh

Tại sao Bootstrap của tôi không hoạt động?

Đây là những lý do có thể xảy ra. Bạn có liên kết sai hoặc không chính xác tới tệp bootstrap . bộ nhớ đệm và lịch sử của trình duyệt đang gây rối với html của bạn. Các tệp CSS khác đang ghi đè tệp bootstrap.

Đâu là những sai lầm cần tránh để Bootstrap hoạt động tốt?

Tránh 8 sai lầm này để có cách thực hành bootstrap tốt nhất. .
Thiếu kiến ​​thức thiết kế và mã hóa. .
Biến Đơn Giản Thành Phức Tạp. .
Lạm dụng khung. .
Thiếu khả năng tương thích xử lý. .
Sửa đổi tệp CSS Bootstrap. .
Chỉ sử dụng các tính năng cần thiết

Làm cách nào để sử dụng Bootstrap mà không cần CDN?

Truy cập https. //getbootstrap. com/ và sau đó nhấp vào nút "Tải xuống" lớn. .
Cuộn xuống phần "CSS và JS đã biên dịch", nhấp vào nút "Tải xuống"
Bạn sẽ có một tệp có tên như bootstrap-4. 0. .
Giải nén nó. .
Đưa chúng vào thư mục dự án web của bạn e. g. trong tài sản/bootstrap
Include them inside your html script:.

Tôi có thể sử dụng Bootstrap và CSS cùng nhau không?

Để sử dụng Bootstrap CSS, bạn cần tích hợp nó vào môi trường phát triển của mình . Để làm điều đó, bạn chỉ cần tạo một thư mục trên máy tính của mình. Trong thư mục đó, hãy lưu các tệp CSS và JS đã biên dịch của bạn và một tệp HTML mới nơi bạn sẽ tải Bootstrap.