5

我有像 lxd/container 这样的 VDS(我看到它 df -h)。os安装的是debian 7.11。核心:

uname -r
4.13.0-19-generic

我想在安装到 VDS 的 docker 中运行 mysql。我拉mysql:

docker images
mysql/mysql-server   5.5      5eb4590ee5eb     8 days ago      180MB

但是当我尝试从 root 运行时,我排除了错误

# docker run --privileged --name=mysql2 -d mysql/mysql-server:5.5
a2f7cd827f0d7f2993bcb3c877fd53ae14727d7bf840d768bb2f0b5fc2e0df97
docker: Error response from daemon: OCI runtime create failed: container_linux.go:296: starting container process caused "process_linux.go:398: container init caused \"rootfs_linux.go:58: mounting \\\"proc\\\" to rootfs \\\"/var/lib/docker/vfs/dir/52c9680a80799cb05d6d423b329cd15486882b7e196dcbd435084287f0d823bf\\\" at \\\"/proc\\\" caused \\\"permission denied\\\"\"": unknown.

当我安装 docker 时,我排除了警告mount: permission denied,但安装了 docker 。当我运行 docker 时,我收到警告

service docker start
mount: permission denied
mount: permission denied
mount: permission denied
mount: permission denied
[....] Starting Docker: docker

但服务正在运行

service docker status
[ ok ] Docker is running.

我没有看到 syslog,我的目录 /var/log 是

-rw-r--r-- 1 root  root      12438 Jan 24 08:19 alternatives.log
drwxr-xr-x 2 root  root          4 Jan 20 00:47 apt
-rw-r--r-- 1 root  root     244986 Jan 20 00:47 bootstrap.log
-rw-rw---- 1 root  utmp          0 Jan 20 00:46 btmp
-rw-r----- 1 root  adm           0 Jan 24 09:12 dmesg
-rw-r----- 1 root  adm           0 Jan 23 11:52 dmesg.0
-rw-r----- 1 root  adm          28 Jan 22 12:02 dmesg.1.gz
-rw-r--r-- 1 root  docker    24714 Jan 24 10:36 docker.log
-rw-r--r-- 1 root  root     330467 Jan 24 08:56 dpkg.log
-rw-r--r-- 1 root  root       3296 Jan 21 21:47 faillog
drwxr-xr-x 2 root  root          4 Jan 20 00:47 fsck
-rw-rw-r-- 1 root  utmp      30076 Jan 24 09:20 lastlog
drwxr-s--- 2 mysql adm           2 Jan 21 21:47 mysql
drwxr-xr-x 2 root  root          3 Jan 24 09:11 unattended-upgrades
-rw-rw-r-- 1 root  utmp   27376128 Jan 24 10:53 wtmp

在 docker.log 中

time="2018-01-24T11:00:19.694045397+02:00" level=info msg="ignoring event" module=libcontainerd namespace=moby topic=/containers/create type="*events.ContainerCreate"
time="2018-01-24T11:00:19+02:00" level=info msg="shim docker-containerd-shim started" address="/containerd-shim/moby/1be5433094ef58b7124ffcf9b5ee5e86b474a9129bf3f747a5bfc7e07767ac5a/shim.sock" debug=false module="containerd/tasks" pid=3027 
time="2018-01-24T11:00:19+02:00" level=info msg="shim reaped" id=1be5433094ef58b7124ffcf9b5ee5e86b474a9129bf3f747a5bfc7e07767ac5a module="containerd/tasks" 
time="2018-01-24T11:00:19.939970415+02:00" level=error msg="stream copy error: reading from a closed fifo"
time="2018-01-24T11:00:19.940053674+02:00" level=error msg="stream copy error: reading from a closed fifo"
time="2018-01-24T11:00:19.942454319+02:00" level=info msg="ignoring event" module=libcontainerd namespace=moby topic=/containers/delete type="*events.ContainerDelete"
time="2018-01-24T11:00:20.120509909+02:00" level=error msg="1be5433094ef58b7124ffcf9b5ee5e86b474a9129bf3f747a5bfc7e07767ac5a cleanup: failed to delete container from containerd: no such container"

你能帮我吗?

4

1 回答 1

8

为了在 LXD 容器中运行 Docker,您需要启用 container nesting。嵌套意味着一个容器(来自 LXD)内部可以有一个容器(docker)。

像这样启动容器,

lxc launch ubuntu:x mydockers -c security.nesting=true

如果已经创建了 LXD 容器,则添加标志

lxc config set mydockers security.nesting true
lxc restart mydockers
于 2018-01-26T23:21:09.820 回答