Я хочу передать свои журналы контейнеров в AWS Cloud Watch.
Я не могу установить учетные данные AWS на Docker Desktop для Ma c.
Docker Version : Version 19.3.5
Mac OS Version : 10.14.6
Я создал ~/.aws/credentials
файлов с учетными данными AWS.
aws_access_key_id : XXXXXXX,
aws_secret_access_key" : XXXXXXXX
Я попытался запустить Docker следующими способами:
docker run --name flask -v ${HOME}/.aws/:/root/.aws/:ro -d --log-driver=awslogs --log-opt awslogs-region=XXXX --log-opt awslogs-group=XXXX --log-opt awslogs-create-group=true flask-image
Пользователь IAM, настроивший политику:
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"logs:CreateLogStream",
"logs:PutLogEvents"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
Но получил следующую ошибку:
docker: Error response from daemon: failed to initialize logging driver: failed to create Cloudwatch log stream: NoCredentialProviders: no valid providers in chain. Deprecated.
For verbose messaging see aws.Config.CredentialsChainVerboseErrors.
Я также добавил в файл docker.json
.
И в файле Docker Daemon поместите параметры ведения журнала AWS.
{
"log-driver" : "awslogs",
"log-opts" : {
"awslogs-region" : "xxxx",
"awslogs-group" : "xxxxx",
"awslogs-stream" : "xxxxx"
}
}
Из исследования я обнаружил, что мне нужно установить учетные данные AWS внутри демона Docker, а на моем недостаточно. Docker хост. Как вы видите, я пытался сделать это с томом, но безуспешно.
Я использую Docker на своей Ma c, у кого-нибудь есть идеи, как решить эту проблему?