docker 使用注意要点
启动docker服务前必须保证firewalld服务处于正常工作状态,因为docker的NAT类型网络需要依赖iptables。但使用叠加网络时除外。
docker程序的安装,如果系统禁用了SELinux,安装过程会报错,如果有需要可以启用SELinux。
docker的最佳实践是运行单进程的,能够解决程序的依赖关系和运行时环境,方便迁移和部署。
运行的容器内部必须有一个进程,否则容器运行后会立即终止。
容器中运行的唯一进程必须运行在前台,不能以守护进程的方式运行,不然该容器会终止
如果确定要在容器中运行多个进程,一般需要有一个管控程序来统一所有进程,使所有进程作为管控程序的子进程,例如supervised 。
在提供综合服务的集群架构中,多个容器(进程)间通信的解决方案:
- (1)由于docker中的容器的IP地址会不断变化,多个容器需要通信时,需要以主机名来定位至指定容器。
- (2)使用联盟式网络。
为了控制容器镜像的大小,在容器中执行过yum命令后,制作镜像前要尽量清理掉不必要的内容,比如执行 yum clean all
容器中的进程都需要运行在前台,很多程序定义其运行在前台的方法可以查询其unit file文件
在使用别人制作的镜像作为dockerfile的base image时,小心别人的ONBUILD命令可能会设置后门,慎用!