本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
一般而言, AWS CodeBuild 無法存取 VPC 中的資源。若要啟用存取,您必須在 CodeBuild 專案組態中提供其他 VPC 特定的組態資訊。其中包括 VPC ID、VPC 子網路 ID 和 VPC 安全群組 ID。然後,已啟用 VPC 的建置就能夠存取 VPC 內的資源。如需在 Amazon VPC 中設定 VPC 的詳細資訊,請參閱《Amazon VPC 使用者指南》。
主題
使用案例
AWS CodeBuild 建置的 VPC 連線能力可讓您:
-
針對私有子網路上隔離的 Amazon RDS 資料庫中的資料,從您的組建執行整合測試。
-
直接從測試查詢 Amazon ElastiCache 叢集中的資料。
-
與 Amazon EC2、Amazon ECS 上託管的內部 Web 服務,或使用內部 Elastic Load Balancing 的服務互動。
-
從自我託管的內部成品儲存庫擷取相依性,例如 PyPI for Python、Maven for Java 和 npm for Node.js。
-
存取 S3 儲存貯體中的物件,該儲存貯體設定為僅允許透過 Amazon VPC 端點存取。
-
透過與子網路相關聯的 NAT 閘道或 NAT 執行個體的彈性 IP 地址,查詢需要固定 IP 地址的外部 Web 服務。
您的組建可以存取您的 VPC 中託管的任何資源。
VPC 最佳實務
當您設定 VPC 以使用 CodeBuild 時,請使用此檢查清單。
-
使用公有和私有子網路以及 NAT 閘道來設定 VPC。NAT 閘道必須位於公有子網路中。如需詳細資訊,請參閱《Amazon VPC 使用者指南》中的含公有和私有子網路 (NAT) 的 VPC。
重要
您需要 NAT 閘道或 NAT 執行個體,才能將 CodeBuild 與 VPC 搭配使用,以便 CodeBuild 可以連接公有端點 (例如,在執行組建時執行 CLI 命令)。您不能使用網際網路閘道而非 NAT 閘道或 NAT 執行個體,因為 CodeBuild 不支援為其建立的網路介面指派彈性 IP 地址,Amazon EC2 不支援針對在 Amazon EC2 執行個體啟動之外建立的任何網路介面自動指派公有 IP 地址。
-
將多個可用區域加入您的 VPC。
-
請確定您的安全群組不允許流量傳入 (進入) 您的組建。CodeBuild 對傳出流量沒有特定要求,但您必須允許存取建置所需的任何網際網路資源,例如 GitHub 或 Amazon S3。
如需詳細資訊,請參閱《Amazon VPC 使用者指南》中的安全群組規則。
-
為您的組建設定個別子網路。
-
當您設定 CodeBuild 專案以存取 VPC 時,請僅選擇私有子網路。
如需在 Amazon VPC 中設定 VPC 的詳細資訊,請參閱《Amazon VPC 使用者指南》。
如需使用 AWS CloudFormation 設定 VPC 以使用 CodeBuild VPC 功能的詳細資訊,請參閱 AWS CloudFormation VPC 範本。
VPCs的限制
-
CodeBuild 的 VPC 連線不支援共用 VPCs。