共计 1893 个字符,预计需要花费 5 分钟才能阅读完成。
错误现象
在运行容器时,出现以下错误
[root@localhost test]# docker run -it -d -v $PWD/test.txt:/mydir mytest
fd44cdc550548c0b791d6a7d12d27a2d64855c7c5d498305dd1239d6608b4350
Error response from daemon: Cannot start container fd44cdc550548c0b791d6a7d12d27a2d64855c7c5d498305dd1239d6608b4350: [9] System error: could not synchronise with container process
而实际查看容器时,可以看到容器已经成功创建,但是实际无法启动。
[root@localhost test]# docker ps -a|grep fd4
fd44cdc55054 mytest "sh" 3 minutes ago Created mad_jones
问题复现及分析
容器直接启动 docker run -it mytest
是可以正常启动的。
[root@localhost site-packages]# docker run -it mytest
/ # stat /mydir
File: /mydir
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: fd08h/64776d Inode: 786453 Links: 2
Access: (0755/drwxr-xr-x) Uid: (0/ root) Gid: (0/ root)
Access: 1970-01-01 00:00:00.000000000
Modify: 2017-07-04 09:39:03.000000000
Change: 2017-07-04 09:39:04.000000000
但是加了挂载的参数 -v $PWD/test.txt:/mydir
参数后就无法启动了。所以可以判断问题是出在挂载上。
查看上面那个未能启动的容器,可以看到容器中的挂载。
[root@localhost test]# docker inspect fd4
...
"HostConfig": {"Binds": ["/root/dockerfile/test/test.txt:/mydir"
],
...
通过上面可以看到,容器中,或者说原有的镜像中已经存在了 /mydir
,而且/mydir
是一个文件夹。
而现在把 test.txt
这个文件映射挂载为文件夹,即会报 could not synchronise with container process: not a directory
的错误。
修正方法只要修改一下挂载点就可以,可以使用 -v $PWD/test.txt:/mydir/test.txt
即可成功启动。
更多 Docker 相关教程见以下内容:
Docker 安装应用(CentOS 6.5_x64) http://www.linuxidc.com/Linux/2014-07/104595.htm
Ubuntu 16.04 服务器上配置使用 Docker http://www.linuxidc.com/Linux/2017-06/145176.htm
Ubuntu 15.04 下安装 Docker http://www.linuxidc.com/Linux/2015-07/120444.htm
Docker 安装实例 http://www.linuxidc.com/Linux/2017-04/142666.htm
Docker 创建基础镜像 http://www.linuxidc.com/Linux/2017-05/144112.htm
在 Ubuntu 15.04 上如何安装 Docker 及基本用法 http://www.linuxidc.com/Linux/2015-09/122885.htm
Ubuntu 16.04 上 Docker 使用手记 http://www.linuxidc.com/Linux/2016-12/138490.htm
使用 Docker 分分钟启动常用应用 http://www.linuxidc.com/Linux/2017-04/142649.htm
Ubuntu 16.04 下 Docker 修改配置文件不生效解决办法 http://www.linuxidc.com/Linux/2017-05/143862.htm
Docker 的详细介绍:请点这里
Docker 的下载地址:请点这里
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-10/147490.htm