docker常用命令

  |   1,996 浏览

    1. docker镜像
      #从远程docker镜像仓库下载指定镜像(例如下面指令会下载mysql的最新docker镜像)
      $ docker pull mysql
      
      #查看本地docker下载的镜像
      $ docker images
      
      #删除镜像
      $ docker rmi images
      
      #备份本地镜像
      $ docker save -o 本地目录/Demo.tar 镜像ID或镜像NAME
      
      #加载本地镜像
      $ docker load -i 本地目录/Demo.tar
      
      #运行指定镜像
      使用命令:docker run [OPTIONS] IMAGE
      IMAGE:是docker镜像的【ID】或者镜像的【名称:版本号】
      OPTIONS: 是一系列的可选参数配置,详细如下:
      --name mysql 给容器指定一个名称,具有唯一性,不能和其他容器名重复;
      --link mysql-server:mysql 添加链接到另一个容器,冒号前是别名,冒号后是另一个容器ID或者容器名称,常用于因动态IP导致容器之间访问受限,因为通过这项配置即可使用别名来访问对方容器,而不是IP;
      --net bridge 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型;
      --ip 172.168.0.2 给容器分配固定IP;
      -d  后台运行容器,并返回容器ID;
      -v  /host/div:/docker/div 挂载目录,实现宿主机和容器目录互通,类似文件夹共享,冒号前是宿主机目录,冒号后是容器目录;
      -p  8080:80 宿主机与容器端口映射,冒号前是宿主机端口,冒号后是容器端口;
      -h  mysql-server 指定容器的hostname;
      -i  以交互模式运行容器,通常与 -t 同时使用;
      -t  为容器重新分配一个伪输入终端,通常与 -i 同时使用;
      -m  设置容器使用内存最大值;
      --cpuset 0-2 or --cpuset 0,1,2 绑定容器到指定CPU运行;
      多组OPTION以空格分割,例如:
      $ docker --name mysql -d -v /home/my.cnf:/etc/mysql/my.cnf -p 3306:3306 mysql:latest
      
    2. docker容器
      #查看docker容器(正在运行中)
      $ docker ps
      
      #查看所有docker容器
      $ docker ps -a
      
      #删除docker容器
      $ docker rm 容器ID或容器NAME
      
      #查看容器详细信息
      $ docker inspect 容器ID或容器NAME
      
      #进入容器内部
      $ docker exec -it 容器ID或容器NAME /bin/sh
      
    3. docker命令
      #查看所有运行中docker容器的资源占用情况
      $ docker stats
      
      #查看指定docker容器的资源占用情况
      $ docker stats 容器ID或容器NAME
      
      #启动容器
      $ docker start 容器ID或容器NAME
      
      #重启docker容器
      $ docker restart 容器ID或容器NAME
      
      #关闭容器
      $ docker stop 容器ID或容器NAME
      
      #将容器打包成镜像
      $ docker commit 容器ID或容器NAME 镜像名称:镜像版本