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:

  • Programmatically removes files/folder resides in docker container
  • docker API v2 - how to tag and push an image
  • Authorization error with AWS
  • How to mount a single file in a volume
  • NuoDB setup on Docker for MacOS. Connection to NuoDB failed. [08S01] Could not connect to any host
  • Can docker containers share a directory amongst 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"
    

  • Installing docker with devstack
  • Docker-machine error in Linux
  • 3 different applications and docker containers
  • Docker Daemon stop - Timeout for container defaults 10s
  • Executing containers on multiple architectures [closed]
  • access my docker mysql container in java class
  • Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.