Tôi đang cố gắng hết sức để kết nối phiên bản ECS của mình với sổ đăng ký riêng trong gitlab. Tôi đã tải tệp .dockercfg lên một bộ chứa trong cùng khu vực với môi trường EB chính và tham chiếu tệp đó như được mô tả trong tài liệu:
{
"AWSEBDockerrunVersion": 2,
"xác thực": {
"xô": "xxxx",
"chìa khóa": ".dockercfg"
},
"tập": [
{
"tên": "làm lại",
"chủ nhà": {
"sourcePath": "/var/app/volume/redis"
}
}
],
"Định nghĩa vùng chứa": [
{
"tên": "lõi",
"hình ảnh": "registry.gitlab.com/newsletter3/newsletter:latest",
"tên máy chủ": "lõi",
"thiết yếu": đúng,
"ánh xạ cổng": [
{
"hostPort": 80,
"containerPort": 8012
}
],
"liên kết": ["redis"],
"bộ nhớ": 600
},
{
"tên": "làm lại",
"hình ảnh": "redis:6.2-alpine",
"tên máy chủ": "redis",
"thiết yếu": đúng,
"bộ nhớ": 300,
"ánh xạ cổng": [
{
"hostPort": 6379,
"containerPort": 6379
}
],
"mountPoints": [
{
"sourceVolume": "redis",
"containerPath": "/cache",
"chỉ đọc": sai
}
]
}
]
}
Tôi đã tạo tệp cfg .docker của mình bằng cách tạo mã thông báo triển khai mới và mã hóa nó bằng base64.
echo âAWS:GYqZmZxxxxxxxxxxâ | tr -d â\nâ | cơ sở64
Và tệp kết quả trông như thế này:
{
"registry.gitlab.com": {
"xác thực": "xxxxNWQK"
}
}
Tôi cũng đã thử định dạng thứ hai với đối tượng "auths" kèm theo (cách docker lưu trữ config.json
).
Dù tôi có cố gắng thế nào, tôi vẫn thấy các lỗi như thế này:
level=error time=2022-05-10T20:56:28Z msg="DockerGoClient: không thành công
kéo hình ảnh registry.gitlab.com/xxxx/xxxx:
[CannotPullContainerError] Phản hồi lỗi từ daemon: Head
"https://registry.gitlab.com/v2/xxx/xxxx/manifests/latest":
trái phép: HTTP Cơ bản: Truy cập bị từ chối" module=docker_client.go
Tôi cũng đã tìm kiếm tài liệu để tìm bất kỳ tài liệu tham khảo nào về cây đậu đàn hồi tải xuống tệp xác thực của tôi từ nhóm s3 nhưng không thể tìm thấy bất kỳ tài liệu tham khảo nào.
Tôi không chắc tài liệu đã lỗi thời hay chưa và tùy chọn "xác thực" không còn tồn tại nữa.