Как подключить EFS в кластере ECS с помощью бета-версии определения задачи efsVolumeConfiguration, запущенной AWS в январе 2020 г. - PullRequest
0 голосов
/ 04 февраля 2020

AWS обеспечивает это в документации здесь

{
    "containerDefinitions": [
        {
            "name": "container-using-efs",
            "image": "amazonlinux:2",
            "entryPoint": [
                "sh",
                "-c"
            ],
        "command": [
            "ls -la /mount/efs"
        ],
            "mountPoints": [
                {
                    "sourceVolume": "myEfsVolume",
                    "containerPath": "/mount/efs",
                    "readOnly": true
                }
            ]
        }
    ],
    "volumes": [
        {
            "name": "myEfsVolume",
            "efsVolumeConfiguration": {
                "fileSystemId": "fs-1234",
                "rootDirectory": "/path/to/my/data"
            }
        }
    ]
}

я создал файловую систему EFS, назначив ее группе безопасности, разрешающей входящую NFS, и EFS использует эту группу безопасности и su bnet и VP C, которые использует мой кластер ECS

ПРОБЛЕМА

Когда я использую консоль управления AWS для создания точки монтирования в мое определение задачи, которое я должен ввести containerPath, иначе mountPoints не отражено в моем JSON

ВОПРОС

1) Что должен мой containerPath быть под mountPoints?

2) Должен ли я указать rootDirectory под efsVolumeConfiguration?

INFO

1) Я работаю WordPress на моем кластере ECS

2) Я хочу постоянное хранилище для своего контейнера, поэтому я пытаюсь смонтировать EFS

3) Я хочу отобразить все мои файлы WordPress на контейнер EFS поэтому любые изменения, которые я делаю, не отменяются при перезапуске контейнера

Ответы [ 2 ]

3 голосов
/ 11 февраля 2020

containerPath - это путь, который вы хотели бы использовать внутри вашего docker контейнера. В WordPress это может быть, например, '/ var / www/html/htdocs/content/uploads'. rootDirectory - это путь к каталогу внутри EFS, который вы хотите использовать. Пример, где у меня есть папка uploads в моей EFS:

"volumes": [
{
  "efsVolumeConfiguration": {
    "fileSystemId": "fs-xxxxxx",
    "rootDirectory": "/uploads"
}]

Когда вы создаете свою цель EFS в первый раз, у вас нет папок внутри нее, поэтому вам нужно использовать / как rootDirectory

0 голосов
/ 28 марта 2020

Этот вопрос получил много просмотров .. поэтому я хотел помочь всем

Итак, я упомянул, как использовать эту функцию в блоге, который я разместил здесь,

Проверьте шаг 4 - шаг 7 и шаг 8 - шаг 12

. Это даст вам хорошее представление о том, как его реализовать практически в AWS Management console

. Надеюсь, это поможет. сообщество:)

...