Docker Compose with one Terminating Container

I’m having a docker compose setup of a database container, an application container and one container which pre-loads the database with necessary data.

I want to start all of the containers together with docker-compose up while the pre-loading container terminates after it is one with exit 0.

  • Error in Docker overlay folder after replacing mounted folder with a file on the host
  • mysql does not start with large log files
  • Minor change in ansible playbook does not get updated in target host
  • Karaf 4, Karaf Profiles, and Docker
  • How can I combine ENV statement in Dockerfile?
  • Docker daemon start error on ubuntu 12.04
  • But terminating this one container takes down the complete setup with the message:

    composesetup_load_1 exited with code 0
    Gracefully stopping... (press Ctrl+C again to force)
    Stopping composesetup_app_1...
    Stopping composesetup_db_1...
    

    Is there any way of having multiple containers with different life-time in one docker-compose setup? If yes, how?

  • How to play a docker run --rm with docker-java?
  • Selenium ChromeDriver Failed to load resource: net::ERR_CONNECTION_CLOSED
  • elastic-beanstalk docker app not updating upon deploy
  • Deploying to dockerized Jboss Zip Exception
  • Docker-Compose pass IP of services
  • Why is the Kafka distributed connector dying when the node I created it on is killed?
  • One Solution collect form web for “Docker Compose with one Terminating Container”

    My workaround for now is to keep the pre-loading container running by adding tail -f /dev/null to the end of the entrypoint script. This keeps the process running, while nothing actual happens.

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.