Tôi đang cố lấy một hình ảnh riêng tư từ Cơ quan đăng ký hiện vật repo trong Google Cloud từ một cụm kubernetes đang chạy trong một dự án Google Cloud khác bằng kubectl.
phiên bản kubernetes 1.20.15-gke.1000
Tài khoản dịch vụ cho kubernetes đã được cấp quyền artifactregistry.reader và storageobject.viewer vì hình ảnh nằm trong một dự án khác với tài khoản dịch vụ kubernetes
Tôi áp dụng yaml dưới đây cho lệnh kubectl.
áp dụng kubectl -f proxy_with_workload_identity.yaml
apiVersion: ứng dụng/v1
loại: Triển khai
metadata:
tên: ứng dụng thử nghiệm
thông số kỹ thuật:
bộ chọn:
trận đấuNhãn:
ứng dụng: dự án ứng dụng
chiến lược:
cánCập nhật:
maxSurge: 1
tối đaKhông khả dụng: 1
loại: CánUpdate
mẫu:
metadata:
nhãn:
ứng dụng: dự án ứng dụng
thông số kỹ thuật:
hộp đựng:
- env:
- tên: DB_USER
giá trịTừ:
bí mậtKeyRef:
khóa: tên người dùng
tên: thông tin xác thực db
- tên: DB_PASS
giá trịTừ:
bí mậtKeyRef:
khóa: mật khẩu
tên: thông tin xác thực db
- tên: DB_NAME
giá trị: postgres
hình ảnh: "us-central1-docker.pkg.dev/myproject/docker-repo/test-app:v1"
tên: dự án ứng dụng
cổng:
- Cảng container: 9376
giao thức: TCP
- chỉ huy:
- /cloud_sql_proxy
- "-instance=demo-dev:us-central1:1-sql-1=tcp:5432"
hình ảnh: "gcr.io/cloudsql-docker/gce-proxy:latest"
tên: đám mây-sql-proxy
tài nguyên:
yêu cầu:
CPU: 200m
bộ nhớ: 32Mi
bối cảnh bảo mật:
runAsNonRoot: đúng
serviceAccountName: testapp
Hình ảnh proxy-sql-đám mây đang được kéo và bộ chứa đang chạy, nhưng hình ảnh trong kho lưu trữ riêng không được kéo "us-central1-docker.pkg.dev/myproject/docker-repo/test-app:v1 "
Khi tôi kiểm tra các nhóm, tôi thấy lỗi này:
code = Unknown desc = không thể kéo và giải nén hình ảnh "us-central1-docker.pkg.dev/myproject/docker-repo/test-app:v1:v1": không thể giải quyết tham chiếu "us-central1-docker.pkg. dev/myproject/docker-repo/test-app:v1": không thể ủy quyền: không thể tìm nạp mã thông báo oauth: trạng thái không mong muốn: 403 Bị cấm
Bất cứ ai có thể cho tôi biết làm thế nào để giải quyết điều này?