Docker使用总结

Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版)

1.启动 停止docker服务

  systemctl start docker         #启动docker服务
  systemctl status docker        #查看docker的运行状态
  systemctl stop docker          #停止docker服务

2.帮助命令

  docker --help                #获取帮助
  docker command --help      #获取对应的命令帮助

3.镜像列表

  docker images   #列出本地所有镜像
  #REPOSITORY:表示镜像的仓库源
  #TAG:镜像的标签
  #IMAGE ID:镜像ID
  #CREATED:镜像创建时间
  #SIZE:镜像大小

4.搜索镜像(https://hub.docker.com/

  docker search mysql       #搜索mysql镜像
  docker search mysql  -s 30   #获取stars大于30的mysql镜像
  #NAME: 镜像仓库源的名称
  #DESCRIPTION: 镜像的描述
  #OFFICIAL: 是否 docker 官方发布
  #stars: 类似 Github 里面的 star,表示点赞、喜欢的意思。
  #AUTOMATED: 自动构建。    

5.获取镜像

  docker pull mysql        #获取l最新的mysql
  docker pull mysql:5.7    #获取版本为5.7的mysql

6.执行镜像

  docker run -it  mysql:5.7 /bin/bash  
      #--name:定义容器的名称
      #-i: 交互式操作。
      #-t: 终端。
      #-d:后台执行
      #-p 宿主机IP:容器IP :端口映射
      #-P :随机指定宿主机的端口进行映射
      #-v:挂载宿主目录到容器目录 
      #-e:设置环境变量 
      #/bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。  
    docerk start 容器ID         #重启容器
    docker stop 容器ID          #停止容器
    docker restart 容器ID       #重启容器
    在使用 -d 参数时,容器启动后会进入后台。此时想要进入容器,可以通过以下指令进入:
      #  docker attach  容器ID 
      #  docker exec 容器ID  :推荐大家使用 docker exec 命令,因为此退出容器终端,不会导致容器的停止。    

7.删除镜像

  docker rmi -f mysql    #强制删除mysql镜像

8.设置镜像标签

  docker tag 791b6e40940c docker.io/mysql:8.0

 9.查看容器

    docker ps   #查看正在运行的容器
      #  -l   :查询最后一次创建的容器
      #  -a   :查看全部的容器(包括已经停止的)
      #  -n 5 :查看最后5个运行的容器

10.修改和创建镜像

    docker commit -m="has update" -a="HT" e218edb10161 HT/mysql:5.7
        #-m    : 提交的描述信息
        #-a    : 指定镜像作者
        #e218edb10161    :容器 ID
        #HT/mysql:5.7    :指定要创建的目标镜像名
原文地址:https://www.cnblogs.com/HTLucky/p/12300516.html