Skip to content

Unable to use AWS Fargate bind mounts with Dockerfile #11278

@mattmassicotte

Description

@mattmassicotte

Affected Version

0.21.1-rc1

Description

So far, I've never been able to use AWS Fargate bind mounts (ie Docker volumes) with Druid. I have a workaround of using EFS mounts, but it is a real pain to use. I was really excited to see that 0.21.1-rc1 included a change to the Dockefile, so I decided to check it out. Unfortunately, it still does not work.

I want to stress that this is not a regression.

The druid process fails to start with the following logging:

mkdir: can't create directory 'var/tmp': Permission denied
mkdir: can't create directory 'var/druid/': Permission denied
mkdir: can't create directory 'var/druid/': Permission denied
mkdir: can't create directory 'var/druid/': Permission denied
mkdir: can't create directory 'var/druid/': Permission denied
mkdir: can't create directory 'var/druid/': Permission denied

I'm neither a Fargate, Druid, or Docker expert. But, from what I can gather, Fargate is very sensitive to the nature of the path in the VOLUME command in the Dockerfile.

Some details here:

aws/containers-roadmap#938 (comment)

An AWS employee actually looked the the Druid Dockefile and identified the symlinking as the issue. I figured I'd open this bug since it is indeed still not quite compatible with Fargate and this area was just touched.

If I can help in some way, I'd really love to, as this is currently affecting my ability to easily scale Druid. Each new instance requires a special EFS mount point, which it turn requires a special ECS task definition. Regular docker volume support would be awesome.

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugDockerhttps://hub.docker.com/r/apache/druid

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions