Cách thay đổi dự án trong GCP bằng các lệnh CLI


220

Làm cách nào tôi có thể thay đổi dự án đang chạy hiện tại sang dự án khác trong tài khoản GCP ( Google Cloud Platform ) bằng cách sử dụng các lệnh cli khác với sử dụng gcloud initthủ công.

$gcloud projects listsẽ liệt kê các dự án đang chạy trên tài khoản của tôi. Tôi muốn thay đổi dự án hiện tại thành bất kỳ dự án nào khác từ danh sách bằng lệnh cli.

Câu trả lời:


443
gcloud config set project my-project

Bạn cũng có thể đặt biến môi trường $CLOUDSDK_CORE_PROJECT.


58
Nó giúp lấy tên dự án với:gcloud projects list
sww314

16
Và để kiểm tra dự án nào hiện đang hoạt động, hãy sử dụnggcloud config get-value project
Chris Halcrow

4
Điều buồn cười là, tôi chỉ chuyển đổi các dự án của mình một hoặc hai lần mỗi tháng. Vì vậy, mỗi lần tôi phải google nó và kết thúc câu trả lời này một lần nữa và cố gắng cung cấp cho nó một upvote khác :-D
L.Butz

78

Đảm bảo bạn được xác thực bằng tài khoản chính xác:

gcloud auth list
* account 1
  account 2

Thay đổi tài khoản của dự án nếu không:

gcloud config set account `ACCOUNT`

Tùy thuộc vào tài khoản, danh sách dự án sẽ khác nhau:

gcloud projects list

- project 1
- project 2...

Chuyển sang dự án dự định:

gcloud config set project `PROJECT ID`

24

Bạn thực sự nên sử dụng ID dự án chứ không phải tên như các câu trả lời khác ngụ ý.

Thí dụ:

gcloud projects list

PROJECT_ID              NAME                  PROJECT_NUMBER
something-staging-2587  something-staging     804012817122
something-production-24 something-production  392181605736

Sau đó:

gcloud config set project something-staging-2587

Đó cũng là điều tương tự khi chỉ sử dụng --projectcờ với một trong các lệnh:

gcloud --project something-staging-2587 compute ssh my_vm

Nếu bạn sử dụng tên, nó sẽ âm thầm chấp nhận nó nhưng sau đó bạn sẽ luôn gặp phải các vấn đề về kết nối hoặc quyền khi cố gắng triển khai một cái gì đó cho dự án.


9

Câu trả lời được chọn không giúp ích gì nếu bạn không biết tên các dự án bạn đã thêm gcloud. Lưu lượng của tôi là liệt kê các dự án đang hoạt động, sau đó chuyển sang dự án tôi muốn.

gcloud config configurations list

gcloud config configurations activate [NAME]
trong đó [NAME] được liệt kê từ lệnh trước.


6

Ngoài ra, nếu bạn đang sử dụng nhiều dự án và không muốn thiết lập dự án toàn cầu mỗi lần, bạn có thể sử dụng dự án được chọn cờ .

Ví dụ: để kết nối một máy ảo, được đặt tên my_vmtheo dự án có tên my_projecttrong Google Cloud Platform:

gcloud --project my_project tính toán ssh my_vm

Bằng cách này, bạn có thể làm việc với nhiều dự án và thay đổi dễ dàng giữa chúng bằng cách chỉ cần đặt cờ dự án . Bạn có thể tìm thấy nhiều thông tin hơn về các cờ GCP khác từ đây .


4

Đối với những gì nó có giá trị nếu bạn có nhiều hơn một số dự án, mà tôi làm, sử dụng:

gcloud init

Điều này sẽ liệt kê tất cả các dự án của bạn và cung cấp cho bạn tùy chọn thay đổi cài đặt dự án hiện tại, thêm cấu hình hoặc chuyển đổi dự án mới:

Pick configuration to use:
 [1] Re-initialize this configuration [esqimo-preprod] with new settings
 [2] Create a new configuration
 [3] Switch to and re-initialize existing configuration: [default]
 [4] Switch to and re-initialize existing configuration: [project 1]
 [5] Switch to and re-initialize existing configuration: [project 2]
Please enter your numeric choice:

Nó sẽ luôn yêu cầu bạn đăng nhập và hiển thị các tùy chọn cho các tài khoản google khác nhau mà bạn có thể có.

Cho rằng tôi quản lý nhiều tổ chức và dự án, phương pháp này cho phép tôi đơn giản chuyển đổi giữa chúng.


3

Tôi thích các bí danh và đối với những thứ có thể cần nhiều lệnh, dựa trên nhu cầu dự án của bạn, tôi thích các hàm ...

Thí dụ

function switchGCPProject() {
        gcloud config set project [Project Name]
        // if you are using GKE use the following
        gcloud config set container/cluster [Cluster Name]
        // if you are using GCE use the following
        gcloud config set compute/zone [Zone]
        gcloud config set compute/region [region]
        // if you are using GKE use the following
        gcloud container clusters get-credentials [cluster name] --zone [Zone] --project [project name]
        export GOOGLE_APPLICATION_CREDENTIALS=path-to-credentials.json
}

1

Kiểm tra các dự án có sẵn bằng cách chạy : gcloud projects list. Điều này sẽ cung cấp cho bạn một danh sách các dự án mà bạn có thể truy cập. Để chuyển đổi giữa các dự án : gcloud config set project <project-id>.

Ngoài ra, tôi khuyên bạn nên kiểm tra cấu hình hoạt động trước khi thực hiện bất kỳ thay đổi nào đối với cấu hình gcloud. Bạn có thể làm như vậy bằng cách chạy:gcloud config list


1

Có thể là tôi đến trễ để trả lời, nhưng lệnh này khiến tôi tìm hiểu rất nhiều về SDK gcloud

gcloud alpha interactive

Tự mình khám phá sẽ dễ dàng hơn gcloud config set project my-project.

Điều tốt nhất là sự phức tạp của tab để bạn thấy danh sách các dự án bằng cách nhấn tab hai lần.


1

Tôi đang đăng câu trả lời này để cung cấp thông tin chuyên sâu về nhiều cách có sẵn để bạn thay đổi dự án trên GCP. Tôi cũng sẽ giải thích khi nào nên sử dụng từng tùy chọn sau.


Tùy chọn 1: Cloud CLI - Đặt thuộc tính dự án trên SDK đám mây trên CLI

Sử dụng tùy chọn này, nếu bạn muốn chạy tất cả các lệnh Cloud CLI trên một dự án cụ thể.

gcloud config set project <Project-ID>

Với điều này, dự án được chọn trên Cloud CLIsẽ thay đổi và dự án hiện được chọn được tô sáng màu vàng.

nhập mô tả hình ảnh ở đây


Tùy chọn 2: Cloud CLI - Đặt cờ ID dự án với hầu hết các lệnh

Sử dụng lệnh này nếu bạn muốn thực thi các lệnh trên nhiều dự án. Ví dụ: tạo các cụm trong một dự án và sử dụng cùng một cấu hình để tạo trên một dự án khác. Sử dụng cờ sau cho mỗi lệnh.

--project <Project-ID>

Tùy chọn 3: Cloud CLI - Khởi tạo cấu hình trong CLI

Tùy chọn này có thể được sử dụng nếu bạn cần cấu hình riêng cho các dự án / tài khoản khác nhau. Với điều này, bạn có thể dễ dàng chuyển đổi giữa các cấu hình bằng cách sử dụng activatelệnh. Vd : gcloud config configurations activate <congif-name>.

gcloud init

Tùy chọn 4: Mở Cloud Shell mới với dự án ưa thích của bạn

Điều này được ưu tiên nếu bạn không thích làm việc với các lệnh CLI. Nhấn PLUS +nút cho một tab mới. nhập mô tả hình ảnh ở đây

Tiếp theo, chọn dự án ưa thích của bạn.

nhập mô tả hình ảnh ở đây


0

Tôi thêm bí danh vào .bash_alaises để chuyển sang một dự án khác.

alias switch_proj1="gcloud config set project ************"

Đây là một kịch bản để tạo bí danh :) cho tất cả các dự án được liệt kê. Vui lòng cập nhật switch_proj thành các bí danh dự án duy nhất mà bạn có thể nhớ.

gcloud projects list | awk '{print "alias switch_proj=\"gcloud config set project " $1 "\""}'

0

Để cập nhật dự án hiện tại của bạn sang dự án khác, bạn có thể sử dụng dòng lệnh này:

Cập nhật dự án gcloud PRO DỰ_ID --name = NAME

NAME: sẽ là tên mới của dự án của bạn.


3
Câu hỏi là làm thế nào để thay đổi dự án làm việc hiện tại sang một dự án khác, không phải về cách thay đổi tên của dự án. Thông tin có giá trị nhưng không liên quan đến câu hỏi.
P.hunter

0

Kiểm tra dự án của bạn bằng cách chạy danh sách cấu hình gcloud Sau đó, cấu hình gcloud đặt "tên dự án"


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.