Skip to content

Instantly share code, notes, and snippets.

diff --git a/configs/config.go b/configs/config.go
index 33c9fc0..b07f252 100644
--- a/configs/config.go
+++ b/configs/config.go
@@ -96,9 +96,6 @@ type Config struct {
// ReadonlyPaths specifies paths within the container's rootfs to remount as read-only
// so that these files prevent any writes.
ReadonlyPaths []string `json:"readonly_paths"`
-
- // Container's standard descriptors (std{in,out,err}), needed for checkpoint and restore
diff --git a/container_linux.go b/container_linux.go
index f76c777..1e596b5 100644
--- a/container_linux.go
+++ b/container_linux.go
@@ -5,6 +5,7 @@ package libcontainer
import (
"encoding/json"
"fmt"
+ "io/ioutil"
"os"
@boucher
boucher / dump.log
Created April 27, 2015 16:57
dump/restore new container test
vagrant@vagrant:~$ sudo cat /tmp/checkpoints/ctest2-checkpoint/dump.log
(00.000071) Added /etc/resolv.conf:/etc/resolv.conf ext mount mapping
(00.000102) Added /etc/hostname:/etc/hostname ext mount mapping
(00.000105) Added /etc/hosts:/etc/hosts ext mount mapping
(00.000109) ========================================
(00.000112) Dumping processes (pid: 30187)
(00.000114) ========================================
(00.000161) Found anon-shmem device at 4
(00.000170) Reset 30226's dirty tracking
(00.000203) ... done
# file run.sh
#!/bin/bash
if [ "$DEPLOY_ENV" == "development" ]; then
# refresh npm modules
mkdir -p /tmp/packages
cp /app/package.json /tmp/packages/
cp /app/npm-shrinkwrap.json /tmp/packages/
(00.000517) Added eth0:vethdb4a064 veth map
(00.000590) Added /var/lib/docker/aufs/mnt/bf027699523765ea6ec7531a022fa12a37cee7a4312ea65b1218ec34ba1fc681/app/available_modules:/var/lib/docker/vfs/dir/25194a66f9d81334b1136c836b20ad86df2b35631616fdfb0c4836807dd0f729 ext mount mapping
(00.000600) Added /var/lib/docker/aufs/mnt/bf027699523765ea6ec7531a022fa12a37cee7a4312ea65b1218ec34ba1fc681/app/modules/db:/var/lib/docker/vfs/dir/a8b8cc89fad06385b3ff27d937d782107c1f245a0e0ea2e3689ea01bb5346870 ext mount mapping
(00.000603) Added /var/lib/docker/aufs/mnt/bf027699523765ea6ec7531a022fa12a37cee7a4312ea65b1218ec34ba1fc681/etc/resolv.conf:/var/lib/docker/containers/bf027699523765ea6ec7531a022fa12a37cee7a4312ea65b1218ec34ba1fc681/resolv.conf ext mount mapping
(00.000607) Added /var/lib/docker/aufs/mnt/bf027699523765ea6ec7531a022fa12a37cee7a4312ea65b1218ec34ba1fc681/etc/hostname:/var/lib/docker/containers/bf027699523765ea6ec7531a022fa12a37cee7a4312ea65b1218ec34ba1fc681/hostname ext mount mapping
(00.000612) Added /var/lib/
vagrant@vagrant:/docker$ sudo cat /tmp/strace.log
8238 execve("/usr/local/sbin/criu", ["criu", "swrk", "3"], [/* 12 vars */]) = 0
8238 brk(0) = 0x2070000
8238 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
8238 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9391c49000
8238 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
8238 open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
8238 fstat(4, {st_mode=S_IFREG|0644, st_size=33432, ...}) = 0
8238 mmap(NULL, 33432, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7f9391c40000
8238 close(4) = 0
DUMP stringOpts: {"images_dir_fd":77,"pid":22554,"leave_running":true,"ext_unix_sk":false,"tcp_established":true,"shell_job":false,"log_level":4,"log_file":"dump.log","notify_scripts":true,"root":"/var/lib/docker/aufs/mnt/fa93b09a86f58242352e2c96dd81646df36a16edf060f0f13179868f8209c0dc","work_dir_fd":75,"ext_mnt":[{"key":"/app/available_modules","val":"/var/lib/docker/aufs/mnt/fa93b09a86f58242352e2c96dd81646df36a16edf060f0f13179868f8209c0dc/app/available_modules"},{"key":"/app/modules/db","val":"/var/lib/docker/aufs/mnt/fa93b09a86f58242352e2c96dd81646df36a16edf060f0f13179868f8209c0dc/app/modules/db"},{"key":"/etc/resolv.conf","val":"/var/lib/docker/aufs/mnt/fa93b09a86f58242352e2c96dd81646df36a16edf060f0f13179868f8209c0dc/etc/resolv.conf"},{"key":"/etc/hostname","val":"/var/lib/docker/aufs/mnt/fa93b09a86f58242352e2c96dd81646df36a16edf060f0f13179868f8209c0dc/etc/hostname"},{"key":"/etc/hosts","val":"/var/lib/docker/aufs/mnt/fa93b09a86f58242352e2c96dd81646df36a16edf060f0f13179868f8209c0dc/etc/hosts"}],"manage_cg
# entries-in-buffer/entries-written: 99/99 #P:2
#
# _-----=> irqs-off
# / _----=> need-resched
# | / _---=> hardirq/softirq
# || / _--=> preempt-depth
# ||| / delay
# TASK-PID CPU# |||| TIMESTAMP FUNCTION
# | | | |||| | |
sh-22291 [001] d... 5148.873034: signal_generate: sig=17 errno=0 code=262145 comm=sudo pid=22290 grp=1 res=0
(00.000042) Added /var/lib/docker/aufs/mnt/aef1fe98f05bd8385acb231400f83b4ffa1a0cc891dede16d73dfb77df564220/app/available_modules:/var/lib/docker/vfs/dir/25194a66f9d81334b1136c836b20ad86df2b35631616fdfb0c4836807dd0f729 ext mount mapping
(00.000069) Added /var/lib/docker/aufs/mnt/aef1fe98f05bd8385acb231400f83b4ffa1a0cc891dede16d73dfb77df564220/app/modules/db:/var/lib/docker/vfs/dir/a0d6bf94637ae5f085f0188d905cdaa44b9f333e0c0aad3f707d712cce216f15 ext mount mapping
(00.000072) Added /var/lib/docker/aufs/mnt/aef1fe98f05bd8385acb231400f83b4ffa1a0cc891dede16d73dfb77df564220/etc/resolv.conf:/var/lib/docker/containers/aef1fe98f05bd8385acb231400f83b4ffa1a0cc891dede16d73dfb77df564220/resolv.conf ext mount mapping
(00.000075) Added /var/lib/docker/aufs/mnt/aef1fe98f05bd8385acb231400f83b4ffa1a0cc891dede16d73dfb77df564220/etc/hostname:/var/lib/docker/containers/aef1fe98f05bd8385acb231400f83b4ffa1a0cc891dede16d73dfb77df564220/hostname ext mount mapping
(00.000077) Added /var/lib/docker/aufs/mnt/aef1fe98f05bd8385acb231400f8
(00.169395) Error (cr-restore.c:1597): Can't interrupt task: No such process
(00.169400) Restore finished successfully. Resuming tasks.
(00.169445) Error (arch/x86/crtools.c:550): Unable to disable the breakpoint
(00.169449) Error (cr-restore.c:1831): Unable to flush breakpoints
(00.169461) Error (cr-restore.c:1666): Unable to execute 6727: No such process