docker实战

docker之what

Docker 是一个的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

docker是集大成者。

比如我们配置机器学习环境时,新手一般都会从安装python,然后pip一大堆包开始;老手则是下载anaconda环境得到了所有的包,然后可能会为不同的项目create不同的隔离的虚拟环境;但是及时如此我们经常会遇到比如说tensorflow或者其他包之间其实是有冲突或者不是github某项目所指定的版本,甚至有个项目他忘记告诉我们用哪个版本的包。这样的情况通过安装现成的、可运行的docker 镜像就可以解决大部分问题。

docker之why

docker解决的是环境部署繁杂和容易出错的问题,作者可以把所依赖的所有环境都配置好,然后编写Dockerfile,来配置好环境依赖,命令有:From,maintainer,RUN,CMD,EXPOSE,ENV,ADD,COPY,ENTRYPOINT,WORKDIR,VOLUME,USER,ONBUILD等等

docker之how

docker三个要素是:image,container,repo。
数据卷通常用-v来配置本地和docker的地址共享
网络基础配置是通过-p或者容器间的-L连接来简历网络配置的

创建docker镜像分别有2种方法:1 从头写dockerfile 2 根据现有docker进行修改,然后commit成为新的镜像

讨论docker的用处

docker运用很广泛,最常见的是:

  1. 装一个linux系统
  2. 给Linux系统配置一个ssh服务
  3. 安装web服务和应用:lamp,ngnix,tomcat,cms
  4. 多种数据库安装
  5. 安装多种煸炒语言
  6. 开发和测试中应用docker
  7. 应用docker到生产
  8. 使用docker快速掌握新技术要点和沉淀

你可能感兴趣的:(docker实战)