镜像命令

docker images 查看本地镜像

  1. [root@Box ~]# docker images
  2. REPOSITORY TAG IMAGE ID CREATED SIZE
  3. vulstudy_postgres_db latest 080f5dfe45ee 2 months ago 314MB
  4. vulstudy_web_gui latest f6036d7736cc 2 months ago 427MB
  5. # 可选项
  6. -a --all #列出所有镜像
  7. -q --quiet #只显示镜像ID

docker search 镜像搜索

  1. [root@Box ~]# docker search mysql
  2. NAME DESCRIPTION STARS OFFICIAL AUTOMATED
  3. mysql MySQL is a widely used, open-source relation 10578 [OK]
  4. mariadb MariaDB Server is a high performing open sou 3957 [OK]
  5. # 可选项
  6. --filter=STARS=3000 #搜索标星在3000以上的

docker pull 下载镜像

  1. docker pull mysql #默认下载最新版本
  2. docker pull 镜像名:[tag] #下载指定版本
  3. e.g.
  4. docker pull mysql:5.7

docker rmi 删除镜像

  1. [root@Box ~]# docker rmi -f d1165f221234 #删除指定镜像(通过ID指定)
  2. [root@Box ~]# docker rmi -f id1 id2 ... #删除个镜像
  3. [root@Box ~]# docker rmi -f $(docker images -aq) #删除全部镜像

容器命令

  1. #更换国内镜像源:
  2. sudo mkdir -p /etc/docker
  3. sudo tee /etc/docker/daemon.json <<-'EOF'
  4. {
  5. "registry-mirrors": ["https://f9dk003m.mirror.aliyuncs.com"]
  6. }
  7. EOF
  8. sudo systemctl daemon-reload
  9. sudo systemctl restart docker
  10. #说明:下载一个CentOS测试
  11. [root@Box ~]# docker pull centos

新建容器并启动

  1. docker run [可选] image
  2. # 参数说明
  3. --name="NAme" #定义容器名称,用于区分
  4. -d #后台运行
  5. -it #使用交互方式运行
  6. -p #指定容器端口
  7. -p 主机端口:容器端口
  8. -p 容器端口
  9. -P #随机指定端口(大写P)
  10. e.g.运行centos并进入容器
  11. [root@Box ~]# docker run -it centos /bin/bash

列出所有运行容器

  1. docker ps
  2. #列出当前运行容器
  3. -a #列出当前运行和历史运行容器
  4. -n=? #显示最近创建容器
  5. -q #只显示容器编号

退出容器

  1. exit #容器停止并退出
  2. Ctrl+P+Q #容器不停止退出

删除容器

  1. docker rm 容器id #删除指定容器,不能删除正在运行的容器 docker rm -f
  2. docker rm -f $(docker ps -aq) #删除所有容器
  3. docker ps -a -q | xargs docker rm #删除所有容器

启动和停止容器

  1. docker start 容器ID #启动容器ID
  2. docker restart 容器ID #重启容器ID
  3. docker stop 容器ID #停止当前运行的容器
  4. docker kill 容器ID #强制停止