dockerpathdocker-composerebootautostart

docker-compose is starting containers after host reboot. Which ones?


I'm new to docker-compose. Before, when I started containers manually, after a host reboot I had to start the containers manually.

Today I found that -after a host reboot- I had 4 containers running. Those were previously started with docker-compose.

But docker-compose does not work well unless you are in the proper directory with the docker-compose.yml.

Question

How can I know what docker-compose.yml or (which path) was used to launch the docker containers that I find already started as soon as I login after a reboot?

I tried

docker inspect xxxxx

but I could not find any clue on what docker-compose.yml was used to launch.


Solution

  • docker-compose is not starting anything.

    The Docker daemon is starting containers on which you have set a restart policy (possibly in one of your docker-compose.yaml files). You can simply remove these containers (docker container rm ...) if you don't need them anymore, or you can reset the restart policy using docker container update --restart=no <image_name_or_id>.

    You can read more about restart policies here.

    But docker-compose does not work well unless you are in the proper directory with the docker-compose.yml.

    Since docker-compose isn't involve at this stage (it may have been responsible for creating the containers but it is not responsible for restarting them), this isn't a problem. Setting an appropriate restart policy on your containers via your docker-compose.yml is the correct way to enable containers to start at boot.


    You can set a restart policy when you start a container using docker run by including the appropriate --restart=<policy> option on the command line.