Tôi có một kho lưu trữ riêng trên DockerHub mà tôi đang cố triển khai với ECS. Tôi luôn luôn nhận được lỗi sau:Amazon ECS private DockerHub repo: Không thể giải mã lỗi ủy nhiệm docker được cung cấp
Unable to decode provided docker credentials module="ecs credentials" type="dockercfg"
hoặc nếu tôi cố gắng với loại Docker:
Unable to decode provided docker credentials module="ecs credentials" type="docker"
Tôi đã thử tất cả các khả năng được đề cập trên các diễn đàn phát triển ECS.
tôi đã cố gắng:
ECS_ENGINE_AUTH_TYPE=dockercfg
ECS_ENGINE_AUTH_DATA='{"https://index.docker.io/v1/":{"auth":"<token>","email":"<email>"}}'
Tôi cũng đã cố gắng:
ECS_ENGINE_AUTH_TYPE=docker
ECS_ENGINE_AUTH_DATA='{"https://index.docker.io/v1/":{"username":"<username>","password":"<password>","email":"<email>"}}'
Và cũng (vì các tài liệu tại https://godoc.org/github.com/aws/amazon-ecs-agent/agent/engine/dockerauth):
ECS_ENGINE_AUTH_TYPE=docker
ECS_ENGINE_AUTH_DATA='{"https://index.docker.io/v1/<username>":{"username":"<username>","password":"<password>","email":"<email>"}}'
Tôi cũng đã cố gắng mà không có sự '' và với "" xung quanh JSON .. cùng một hiệu ứng. Tôi luôn gặp lỗi tương tự.
Tôi nên thêm Tôi đang nhận ecs.config từ thùng chứa S3 hoạt động tốt. Tôi cũng đã gõ lại các tập tin bằng tay trong trường hợp có một số định dạng không rõ ràng khi tập tin được tải xuống (mặc dù tôi không thấy làm thế nào điều này có thể là trường hợp như các tập tin S3 đến như là một dòng byte).
Nếu tôi SSH vào các ví dụ và thực hiện như sau:
docker login --username=<username> --password=<password> --email=<email>
sau đó tôi có thể kéo hình ảnh thành công: docker pull A/B:latest
Tuy nhiên, ngay sau khi tôi đăng nhập (và do đó Docker tạo ra ~/.docker/config.json), tôi vẫn nhận được lỗi tương tự từ ECS.
tôi nên đề cập đến tất cả các hoạt động trong việc thay đổi các tập tin ecs.config đã được thực hiện như sau:
- Thay đổi số nhiệm vụ để 0
- Chờ để kết thúc
sudo stop ecs
- Thay đổi tập tin cấu hình
sudo start ecs
- Thay đổi số lượng công việc thành 1
Lặp lại ...
Đó là nhận được rất bực bội .. Làm thế nào nên làm việc này hoặc làm thế nào có nó thay đổi kể từ khi tài liệu được viết?
Mọi trợ giúp sẽ được đánh giá cao.
EDIT
Tôi cũng đã cố gắng thiết lập các auth Docker trong file config JSON trong /etc/ecs/ecs.config.json:
{
"EngineAuthType": "docker",
"EngineAuthData": {
"https://index.docker.io/v1/": {
"username": "<me>",
"password": "<password>",
"email": "<email>"
}
}
}
Cấu hình JSON cho điều này được mô tả tại đây: https://godoc.org/github.com/aws/amazon-ecs-agent/agent/config. Nó cũng được đề cập trong các mã bình luận ở đây: https://github.com/aws/amazon-ecs-agent/blob/b197eddd9d5272eeac7dddaa2a84cc4c85522354/agent/engine/dockerauth/doc.go
Cụ thể hơn:
These keys may be set by either setting the environment variables "ECS_ENGINE_AUTH_TYPE" and "ECS_ENGINE_AUTH_DATA" or by setting the keys "EngineAuthData" and "EngineAuthType" in the JSON configuration file located at the configured "ECS_AGENT_CONFIG_FILE_PATH" (see http://godoc.org/github.com/aws/amazon-ecs-agent/agent/config)
Đây là một lần nữa, đưa ra các lỗi tương tự ...