由于最近项目中需要使用docker,不得已学了一下,和虚拟机比起来感觉它的使用并不是太人性化,而且命令行传递参数也不是太友好,出问题跟踪也不方便,但是它确实能一定程度上解决,环境重复搭建问题。下面是我学习过程中的一些总结。
一、关于怎样理解docker或者说docker是啥这个问题,请参考下面几篇文章:
1、什么是Docker?看这一篇干货文章就够了! - 知乎
这篇写的真好,让我这个初学者比较形象的知道docker,反正官网的解释没咋看懂。
2、 https://haicoder.net/docker/docker-course.html
这是一个比较完整的介绍docker及其使用的教程,是我目前看到最完整最简洁明了的中文 教程
3、Get Docker | Docker Documentation
最后这是官方教程,毕竟了解最新的还是有些必要浏览下,虽然有的地方解释有些晦涩
二、docker常用命令及使用
这个感觉上述第二篇文章写的太好了,docker命令-docker命令分类-docker常用命令详解-docker命令行大全-嗨客网
三、docker对接Python的使用
由于我使用docker主要用于python工程的部署,因此结合Python稍微总结一下。
要使用docker容器运行程序,大致需要这几步:
1、编写源码。这个没啥好说的。
2、使用docker打包。大改包含这几步:
1)编写Dockfile。需要注意Dockfile文件名是固定;Dockfile文件中
WORKDIR是容器中的目录,你不需要管它存在不,因为不存在的话自动创建,记住确定好WORKDIR后,一般使用COPY或ADD命令把整个工程复制WORKDIR
2) 打包镜像。切换到Dockfile目录,执行:sudo docker build -t 镜像名:版本号 .
3、镜像查看。docker打包好的镜像,自动更新到本地docker管理系统中,使用
sudo docker images查看
4、运行容器。打包镜像文件不是容器,他只是容器的一个静态模板,一个镜像文件可以产生多个容器。