MikiBelavista
MikiBelavista

Reputation: 2758

How to restart my Docker container?

This is what ps -a gives us

              NAMES
4514ea1b7b22        debian                                     "--name gallant_spen…"   9 minutes ago       Created                                                  peaceful_engelbart
df9bd2731a2b        debian                                     "--name gallant_spen…"   9 minutes ago       Created                                                  happy_hodgkin
dd5b1f1b39ec        redis                                      "docker-entrypoint.s…"   32 minutes ago      Up 31 minutes                 6379/tcp                   myred
ffd6ef9d8bd5        redis                                      "docker-entrypoint.s…"   32 minutes ago      Exited (127) 32 minutes ago                              festive_jennings
9d01d321adad        redis                                      "docker-entrypoint.s…"   33 minutes ago      Exited (0) 32 minutes ago                                agitated_shannon
eb7c13e7cdee        debian                                     "ls /data"               2 days ago          Exited (0) 9 seconds ago                                 gallant_spence
8991a31b1e38        debian                                     "ls /data"               2 days ago          Exited (0) 2 days ago                                    determined_minsky

I have tried in this manner

docker start  `docker ps -q -l` gallant_spence

But error ocurrs

Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused "exec: \"--name\": executable file not found in $PATH": unknown
gallant_spence
Error: failed to start containers: 4514ea1b7b22

I am interested in data volume that has been mounted in my previous work on this container

 "Mounts": [
        {
            "Type": "bind",
            "Source": "/home/mm/code/lesson_04",
            "Destination": "/data",
            "Mode": "",
            "RW": true,
            "Propagation": "rprivate"
        }
    ],

If I try

mm@6830s:~$ docker start -ai gallant_spence 
one_sample.py
parallel_series.py

Python files are added to data folder so I thought that it worked.Then I try again docker ps

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
dd5b1f1b39ec        redis               "docker-entrypoint.s…"   About an hour ago   Up About an hour    6379/tcp            myred

Hot to fix this?

Upvotes: 4

Views: 15188

Answers (1)

tgogos
tgogos

Reputation: 25250

You start a stopped container with

docker start [OPTIONS] CONTAINER [CONTAINER...]

For your case, you can use:

  • docker start gallant_spence or
  • docker start eb7c13e7cdee

As it is shown by the docker ps -a result, your container is configured with this CMD:

"ls /data"

This means that every time you start your container, this command will run and the container will then exit. This is how containers work. When their primary process finishes, they exit.


About the error you get and docker ps -q -l:

  • -q (from "quiet") tells the command to only print the container IDs
  • -l (from "last") tells the command to print the latest created container

This means that the above command brings you back: 4514ea1b7b22. If we put together all things...

your command:

docker start  `docker ps -q -l` gallant_spence

turns to:

docker start 4514ea1b7b22 gallant_spence

The fail message you get is for 4514ea1b7b22 because it doesn't have a CMD set properly to start. I see something like: --name gallant_spen…

Upvotes: 5

Related Questions