-
Notifications
You must be signed in to change notification settings - Fork 638
Docker - Cannot restore container with volumes to host #21
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
Comments
I think it cannot find /var/lib/docker/volumes/8b40ac... path. It looks like the --ext-mount-map-s don't include volumes. |
The path |
Yes, docker daemon when calling criu should specify this path in one of --ext-mount-map arguments. |
If I C/R in the same container it works. The above case is when I am trying to restore to a fresh created container with the same configuration.. So probably it should be something else.. What do you think? |
That's strange indeed. And I've looked at logs again, the --ext-mount-map is specified :) And it looks like the /var/lib/mysql is not found, you're right. The fact that criu uses relative paths for it is OK, criu is always chdir()-ed into container's root at this point (well, it should be :). |
Can you check for /var/lib/mysql path in your container? |
@avagin says that this issue was already met :) The thing is that this directory is created on container START, not CREATION. For some reason. As a workaround you can run your freshly created container with /bin/true command. Then do the restore :) |
I 'll try the @avagin's recommendation and I 'll let you know. Thanks |
@avagin's recommendation seems to work.. (thanks) I passed this error and it seems that now I have another..
|
Can you get more lines from restore.log? The thing is that log says that task with pid 50 exited (for some reason), but in the log tail you've shown there are no lines from that task. |
You can see the full restore log here: |
Here's the error: the /var/lib/mysql is the external mountpoint (the /var/lib/docker/volumes/53920a26a956c52a3c541b25c3ad23314e8724075dafe91563cb1d892d0c296d/_data volume). Does is have the "ibdata1" file inside? |
You were right! The files didn't exist. I transferred them and I was able to restore the container. But know I think that I have the same problem with issue #22. The IP address has changed and I am not able to connect to the DB.
|
It's issue #22 :) OK, let's switch to that one then. |
I am trying to checkpoint a container and restore it to a new one with the same configuration.
What I am doing
then
and I get
The restore.log:
As I can see it seems that Criu it is unable to find file ./var/lib/mysql. This is specified on the container as "Volume"
(From docker inspect command)
I can see that criu is searching for a relative path or am I wrong?
Probably we also need @boucher's help..
Thank you
The text was updated successfully, but these errors were encountered: