-
Notifications
You must be signed in to change notification settings - Fork 18.8k
Fix stopped containers with restart-policy showing as "restarting" #38737
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix stopped containers with restart-policy showing as "restarting" #38737
Conversation
ping @x1022as @cpuguy83 @tonistiigi ptal |
Could also be in Line 103 in 818d2dd
|
Codecov Report
@@ Coverage Diff @@
## master #38737 +/- ##
=========================================
Coverage ? 36.42%
=========================================
Files ? 613
Lines ? 45855
Branches ? 0
=========================================
Hits ? 16701
Misses ? 26859
Partials ? 2295 |
63cd896
to
ac35e50
Compare
@tonistiigi thanks; that looks definitely better; updated |
I'm pretty sure I've seen a PR similar to this. |
hm, was actually looking at that yes 🤔 |
SGTM |
ac35e50
to
19deacb
Compare
ping @cpuguy83 updated to move the first checkpoint to above the 'restart' part; PTAL |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
19deacb
to
0c7f69e
Compare
When manually stopping a container with a restart-policy, the container would show as "restarting" in `docker ps` whereas its actual state is "exited". Stopping a container with a restart policy shows the container as "restarting" docker run -d --name test --restart unless-stopped busybox false docker stop test docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 7e07409fa1d3 busybox "false" 5 minutes ago Restarting (1) 4 minutes ago test However, inspecting the same container shows that it's exited: docker inspect test --format '{{ json .State }}' { "Status": "exited", "Running": false, "Paused": false, "Restarting": false, "OOMKilled": false, "Dead": false, "Pid": 0, "ExitCode": 1, "Error": "", "StartedAt": "2019-02-14T13:26:27.6091648Z", "FinishedAt": "2019-02-14T13:26:27.689427Z" } And killing the container confirms this; docker kill test Error response from daemon: Cannot kill container: test: Container 7e07409fa1d36dc8d8cb8f25cf12ee1168ad9040183b85fafa73ee2c1fcf9361 is not running docker run -d --name test --restart unless-stopped busybox false docker stop test docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES d0595237054a busybox "false" 5 minutes ago Restarting (1) 4 minutes ago exit Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
0c7f69e
to
8c0ecb6
Compare
oh! you were fast; Moved the state counter as well |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
fixes #38720 Flaky test: DockerDaemonSuite.TestDaemonRestartUnlessStopped
When manually stopping a container with a restart-policy, the container
would show as "restarting" in
docker ps
whereas its actual stateis "exited".
Stopping a container with a restart policy shows the container as "restarting"
However, inspecting the same container shows that it's exited:
And killing the container confirms this;
Signed-off-by: Sebastiaan van Stijn github@gone.nl
- What I did
- How I did it
- How to verify it
- Description for the changelog
- A picture of a cute animal (not mandatory but encouraged)