Docker常用命令

1. 查看Docker版本

$ docker version

它用于查看Docker的客户端和服务器版本。

2. 从Docker文件构建Docker映像

$ docker build -t image-name docker-file-location

-t:它用于指定使用提供的名称来标记Docker映像。

3. 运行Docker映像

$ docker run -d -it --privileged `image-name` /usr/sbin/init

-d:用于创建守护程序进程。

4. 查看可用的Docker映像

$ docker images

5. 查看最近的运行容器

$ docker ps -l

-l:它用于显示最新的可用容器。

6. 查看所有正在运行的容器

$ docker ps -a

-a:它用于显示所有可用的容器。

7. 停止运行容器

$ docker stop container_id

container_id:由Docker分配给容器的Id。

8.搜索可用的docker镜像
docker search image-name

9. 删除一个映像

$ docker rmi image-name

10. 删除所有映像

$ docker rmi $(docker images -q)

docker中批量删除 tag为none的镜像
docker images|grep none|awk '{print $3}'|xargs docker rmi

11. 强制删除所有映像

$ docker rmi -f $(docker images -q)

-f:用于强制删除映像。

12. 删除所有容器

$ docker rm $(docker ps -a -q)

13. 进入Docker容器

`$ docker exec -it container-id bash

14.下载docker镜像,注意:这里要写用docker search搜索到的完整的镜像名。
`

docker pull image-name

15.提交当前修改后的状态,保存为镜像

docker commit 容器id 新的镜像名称,运行完返回新版本镜像的id号

16. 推送Docker映像

以下命令用于将docker映像推送到docker中心资源库。

$ docker push username/image-name

需要登录您的Docker中心的帐户。如果还没有Docker中心的帐户,请先创建它。

$docker login 先登入

17.建一个新容器并登入:docker run -i -t IMAGE id /bin/bash	启动一个退出的容器:docker start 容器ID        进入到已经运行中的容器:docker attach 容器ID

18. 挂载数据卷,运行一个普通的容器,用来同步数据
   docker run -v  (主机要共享的目录):(容器上同步的目录)  --name (指定数据卷容器的名称) centos /bin/bash
   冒号前为宿主机目录,必须为绝对路径,冒号后为镜像内挂载的路径。默认挂载的路径权限为读写。如果指定为只读可以用:ro,以 / 开头表示为绝对路径
   运行:docker run -v /home/wpb:/home/wpb  --name dataname centos /bin/bash

  docker容器内对应的挂载目录中,运行命令ls后提示:

  ls: cannot open directory .: Permission denied   在运行容器的时候,给容器加特权,及加上 --privileged=true 参数  docker run -d -v /home/wpb:home/wpb --privileged=true --name dataname centos

19.运行一个新的容器启用镜像,并使用这个数据卷,这样就做到了文件夹文件的同步,运行完成后,进入镜像中
   docker run -it --volumes-from 卷名称 镜像名称
   --volumes-from用来指定要从哪个数据卷来挂载数据,镜像名称:需要启用的镜像
   docker run -it --volumes-from dataname centos /bin/bash

20.当前镜像保存为.tar文件

  docker save 镜像id> /文件保存在主机的目录/文件保存的名称.tar

21. 在其他安装好docker的linux系统上载入新的镜像
    docker load --input /文件路径/文件名称.tar

22.启动docker服务

  systemctl start docker.service

可选:设置开机启动:systemctl enable docker

23. tag修改镜像名称

docker tag

--privileged=true

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )