Docker-Compose Restart Policy

I looked thru the docs for docker-compose and I see that Version 3 has a deploy restart policy but it’s only for swarm. I tried setting restart_policy on my service but got this error:

ERROR: The Compose file './docker-compose.yml' is invalid because:
Unsupported config option for services.web: 'restart_policy'

Is there any way to set a restart policy on services created using docker-compose outside of a swarm?

  • initdb: could not change permissions of directory on Postgresql container
  • Share data between 2 containers
  • What is Docker Cloud local url?
  • Emulate Bluetooth LE Adapter for Acceptance Testing
  • How to allow users to run (but not manage) docker containers?
  • How can I forward localhost port on my container to localhost on my host?
  • Custom DOCKER_HOST in Elastic Beanstalk Docker environment
  • Could not find jenkins_home folder in Ubuntu after downloading the Docker Jenkins Image
  • Building Apache Mesos cluster with Docker Compose
  • Docker rsyslog driver add message length before actual message
  • How to allocate percentage of system resources to Docker?
  • Disable access to LAN from docker container
  • 2 Solutions collect form web for “Docker-Compose Restart Policy”

    Version 2 supports restart policies, using the restart keyword, and should work fine for you if you don’t need Swarm (which you said you don’t need/want).

    version: '2'
    services:
      web:
        image: apache
        restart: always
    

    https://docs.docker.com/compose/compose-file/compose-file-v2/

    Compose format version 3 has a parameter called restart_policy, but so far as I can tell from documentation it is only valid as part of deploy, which is only used when deploying to a Swarm. So version 3 is probably not useful in your case.

    It’s looks like a gap in documentation

    In 3rd version we can still use “restart” inside services same as before in v.2 (except for deploy into swarm)

    version: '3'
    services:
      my-service:
        restart: on-failure:5 
    
    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.