Docker是附生在Host上的容器服务,所以天生有些不足之处,好在大多也有应对方案。
一. 不支持定时任务
crontab跑不起来。
应用方案:
在Host上创建定时任务,通过docker exec -d
去执行容器内的脚本。
二. systemctl不能用
由于权限问题,systemctl
是不能直接使用的。
应用方案:
-
自己以官方镜像为基础构建镜像,以CentOS7为例,参考 基于CentOS7官方Docker镜像构建自己的镜像
-
不使用这个命令,直接执行相应程序。
三. 文件不好管理
容器产生的数据默认在容器内部,有时又需要使用Host的上目录或文件,所以显得不太方便。使用虚拟机时,我们通过共享来实现文件互通,Docker上自然也有相应的解决方法。
应对方案:
- 目录映射
- 手动管理Local Volumes