基本知识
Docker 属于轻量级的虚拟化,通过层层构建将应用添加至容器中, 解决部署的时候环境统一巨好用。
cmd
// docker
$ docker version // 查看版本
$ docker info // 查看信息
$ sudo usermod -aG docker $USER // 用户加入 Docker 用户组
$ sudo service docker restart // 重新启动docker 服务
// image
$ docker search node // 查看可供选择的node镜像
$ docker pull node:latest // 拉取一个node镜像(从配置的docker registry 中拉取最新)
$ docker history node:latest // 查看镜像内的历史记录
$ docker image ls // 列出本机的所有 image 文件
$ docker image build -t koa-demo // 创建名为koa-demo的image, (-t 加image 名称)
$ docker image build -t koa-demo:0.0.1 // 创建名为koa-demo同时带标签0.0.1的 image, 默认的标签就是latest
$ docker image pull library/hello-world // 从仓库抓取 image 文件到本地
$ docker image rm [imageName] // 删除 image 文件
$ docker run -d -p 80:80 --name webserver nginx
$ docker image tag [imageName] [username]/[repository]:[tag] // 为本地的 image 标注用户名和版本
$ docker image tag koa-demos:0.0.1 ruanyf/koa-demos:0.0.1 // 为本地的 image 标注用户名和版本
$ docker image push [username]/[repository]:[tag] // 发布 image 文件到docker registry
$ docker image ls -f dangling=true // 找出虚悬的镜像(由于pull、build操作,导致镜像名被转移到了新下载的镜像身上,而旧的镜像上的这个名称则被取消,显示成<none>)
$ docker image prune // 虚悬像没什么用,可用该命令删除(这个命令删除所有虚悬镜像)
$ docker image ls -a // 显示中间层镜像(该类镜像为了加速镜像构建、重复利用资源,与之前的虚悬镜像不同,这些无标签的镜像很多都是中间层镜像,是其它镜像所依赖的镜像。不应该删除,否则会导致上层镜像因为依赖丢失而出错。只要删除那些依赖它们的镜像后,这些依赖的中间层镜像也会被连带删除)
$ docker image ls ubuntu // 根据仓库名列出镜像
$ docker image ls ubuntu:18.04 // 列出特定镜像
$ docker image ls -f since=mongo:3.2 // 过滤出momgo:3.2 之后创建的镜像
$ docker image ls -f before=mongo:3.2 // 过滤出momgo:3.2 之前创建的镜像
$ docker image ls -f label=com.example.version=0.1 // 通过构建镜像时的label过滤
$ docker image ls --format "{
{.ID}}: {
{.Repository}}" // 格式化显示结果
$ docker image ls -q // 只列出image id
$ docker image rm $(docker image ls -q -f before=mongo:3.2) // 删除 momgo:3.2 之前创建的镜像(-q rm 的结合使用)
$ docker image ls --digests // 显示镜像的摘要
$ docker build -t nginx:v3 . // 在Dockerfile 文件所在地方执行, 通过Dockerfile 构建镜像(注意后面有个‘.’表示上下文)
$ docker build -f ../Dockerfile.php <


1609

被折叠的 条评论
为什么被折叠?



