gpt4 book ai didi

django - 如何在AWS ECS docker容器中获取AWS凭证?

转载 作者:行者123 更新时间:2023-12-04 15:52:11 25 4
gpt4 key购买 nike

首先,我使用服务器环境:

  • 服务器:django + nginx + uwsgi
  • 云: docker + AWS ECS
  • 日志记录:AWS CloudWatch日志服务+守望台第三方应用程序

  • 我正在使用适用于AWS CloudWatch日志服务的守望台第三方应用程序。
    因此,我需要将AWS凭证信息提供给docker容器。

    在本地测试时, docker run -v $ HOME / .aws: /root/.aws --rm -it -p 8080: 80 image_name会将本地凭据连接到该卷。

    但是我不知道如何在AWS ECS中应用它。

    http://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html



    我正在关注上面的文章,并且已经通过关注上面的文章编写了.aws/ecs.confg文件。
    AWS_DEFAULT_REGION=ap-northeast-1
    AWS_ACCESS_KEY_ID=bbbbbbbbb
    AWS_SECRET_ACCESS_KEY=aaaaaaaaaaaa

    我像贝娄一样向Dockerfile添加了命令。
    COPY        .aws/ecs.config             /etc/ecs/ecs.config

    但是,访问ECS时会发生内部服务器错误。

    我还尝试在“任务定义”时为容器分配“IAM角色”
    即使您创建“CloudWatchLogsFullAccess IAM角色”,“任务定义”创建屏幕角色下拉菜单中也不会出现任何内容。

    如果您还有其他方法,请帮助我。

    谢谢你。

    这是我的日志记录设置。在本地测试中,日志记录正常工作。
    LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'formatters': {
    'verbose': {
    'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'
    },
    'simple': {
    'format': '%(levelname)s %(message)s'
    },
    },
    'handlers': {
    'watchtower': {
    'level': 'DEBUG',
    'class': 'watchtower.CloudWatchLogHandler',
    'formatter': 'verbose',
    },
    'console': {
    'level': 'INFO',
    'class': 'logging.StreamHandler',
    },
    },
    'loggers': {
    'django': {
    'handlers': ['watchtower', 'console'],
    'level': 'INFO',
    'propagate': True,
    },
    'django.user': {
    'handlers': ['watchtower'],
    'level': DJANGO_LOG_LEVEL,
    'propagate': False,
    },
    'django.partner': {
    'handlers': ['watchtower'],
    'level': DJANGO_LOG_LEVEL,
    'propagate': False,
    },
    }
    }

    最佳答案

    使用Amazon ECS tasks的IAM角色,您可以指定一个IAM角色,任务中的容器可以使用该IAM角色来访问AWS资源。

    关于django - 如何在AWS ECS docker容器中获取AWS凭证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44299786/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com