how to attach a EBS volume to my container using docker-compose.yml and ecs-cli

I am using docker-compose.yml to define a set of containers. And use ecs-cli compose (service) up to create my application on AWS.

I know AWS ECS comes with 100GB EBS automatically when a container is created. (Even though the EC2 instance that hosts the container only have 8GB of hard drive.)
I want to have a persistent storage so that even if I updated my container, it can still point to the same 100GB EBS. I am pretty sure I can do the following to achieve this goal:

  • Docker Copy and change owner
  • cloudera cluster installation failed on docker
  • Communication between linked docker containers
  • Accessing node_modules after npm install inside Docker
  • Meaning and usage of <alias>_PORT_<port>_<proto>_* env vars in linked containers
  • Docker CD workflow - making docker hosts pull new images and deploy them
  • Attach an external EBS to the EC2 instance, and use volume in the
    compose file to attach that volume to the container.

    However, I feel there might be a better way to do so on ECS since it gives you 100GB ELB automatically. That is, if I use the above approach, then I am really ‘wasting’ the 100GB volume that comes with each container.
    So, what is the best way to achieve this. Could you give an answer in the form of a docker-compose.yml format like the following?

    container1:
      image: image1
    
    container2:
      image: image2
      links:
        - "container1"
    

  • Where are docker images stored by boot2docker?
  • Which Amazon AMI for a Rails app in a Docker image?
  • Docker: Why does my home directory disappear after the build?
  • Mysterious UnicodeDecodeError in python3 while building Docker container
  • who is killing my docker container?
  • Trying docker in docker getting TCP connection refused error
  • Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.