最近在学docker,最让我头大的是时间紧张,而且dockers的基本命令非常的繁琐,好在大部分命令是非常有规律的,接下来就给大家做一个总结。
我觉得授人与鱼不如授人以渔,所以大家学习docker最重要的是理解思想和规律,如果有不懂得地方可以查阅官方文档。
本篇主要讲述基本的docker命令,主要包括镜像命令和容器命令。
镜像可以理解为一个App压缩包,而容器可以看作一个已经可以使用的软件。一个镜像可以创建多个容器。
帮助命令

* docker version #显示docker的版本信息
* docker info #显示详细信息
* dockers 命令 --help # 万能命令,查阅命令详情
镜像命令

* docker images #查看所有本机上的镜像 [root@szs /] docker images REPOSITORY TAG IMAGE
ID CREATED SIZE centos latest 5d0da3dc97646 months ago 231MB ##解释 REPOSITORY
镜像的仓库源 TAG 镜像的标签 IMAGE ID 镜像的ID CREATED 镜像的创建时间 SIZE 镜像的大小##options -a, --all
#列出所有的镜像 -q, --quite #只显示镜像的id
* docker search #搜索镜像
* docker search 镜像名(搜索全部相关镜像) [root@szs /]# docker search mysql NAME
DESCRIPTION STARS OFFICIAL AUTOMATED mysql MySQL is a widely used, open-source
relation…12303 [OK] mariadb MariaDB Server is a high performing open sou… 4733 [
OK] mysql/mysql-server Optimized MySQL Server Docker images. Create… 913 [OK]
percona Percona Server is a fork of the MySQL relati…572 [OK] phpmyadmin
phpMyAdmin - A web interfacefor MySQL and M… 480 [OK] mysql/mysql-cluster
Experimental MySQL Cluster Docker images. Cr…93 centos/mysql-57-centos7 MySQL
5.7 SQL database server 92 bitnami/mysql Bitnami MySQL Docker Image 67 [OK]
ubuntu/mysql MySQLopen source fast, stable, multi-thread… 28 circleci/mysql
MySQL is a widely used, open-source relation…25 mysql/mysql-router MySQL Router
provides transparent routing be…23 centos/mysql-56-centos7 MySQL 5.6 SQL
database server22 google/mysql MySQL server for Google Compute Engine 20 [OK]
vmware/harbor-db Mysql containerfor Harbor 10 mysqlboy/docker-mydumper
docker-mydumper containerizes MySQL logical …3 mysqlboy/mydumper mydumper for
mysql logcial backups3 bitnami/mysqld-exporter 2 ibmcom/mysql-s390x Docker image
for mysql-s390x 1 ibmcom/tidb-ppc64le TiDB is a distributed NewSQL database
compat…0 mirantis/mysql 0 mysqlboy/elasticsearch 0
mysqleatmydata/mysql-eatmydata0 cimg/mysql 0 mysql/mysql-operator MySQL Operator
for Kubernetes 0 mysql/ndb-operator MySQL NDB Operator for Kubernetes 0
* docker search 镜像名 -f 过滤条件 #搜索符合过滤条件的镜像 f=filter 即过滤器 [root@szs /]# docker
search mysql -f stars=4000 NAME DESCRIPTION STARS OFFICIAL AUTOMATED mysql
MySQL is a widely used, open-source relation…12303 [OK] mariadb MariaDB Server
is a high performingopen sou… 4733 [OK] #搜索stats>=4000的镜像
* docker pull #下载镜像
* docker pull 镜像名 #下载指定镜像,默认下载最新版本
* docker pull 镜像名:版本号 #下载指定版本的镜像 [root@szs /]# docker pull hello-world Using
default tag: latest latest: Pulling from library/hello-world 2db29710123e: Pull
complete Digest:
sha256:2498fce14358aa50ead0cc6c19990fc6ff866ce72aeb5546e1d59caac3d0d60f Status:
Downloaded newer imagefor hello-world:latest
docker.io/library/hello-world:latest
* docker rmi -f 镜像id 删除镜像 # rm:remove(移除) i:image(镜像) f:force(强制) [root@szs /]
# docker rmi -f feb5d9fea6a5 Untagged: hello-world:latest Untagged:
hello-world@sha256:2498fce14358aa50ead0cc6c19990fc6ff866ce72aeb5546e1d59caac3d0d60f
Deleted:
sha256:feb5d9fea6a5e9606aa995e879d862b825965ba48de054caab5ef356dc6b3412
Deleted: sha256:e07ee1baac5fae6a26f30cabfe54a36d3402f96afda318fe0a96cec4ca393359
*
docker rmi -f $(docker images -aq) #删除所有的镜像 docker images -aq:查询所有的镜像id

*
docker rmi -f 镜像id 镜像id 镜像id #删除多个镜像

容器命令
#有镜像才可以创建容器,所以先下载一个镜像来学习容器使用 [root@szs ~]# docker pull centos Using default
tag: latest#默认下载最新版本 latest: Pulling from library/centos a1d0c7532777: Pull
complete Digest:
sha256:a27fd8080b517143cbbbab9dfb7c8571c40d67d534bbdee55bd6c473f432b177 Status:
Downloaded newer imagefor centos:latest docker.io/library/centos:latest
* docker run -it /bin/bash #启动并进入容器 [root@szs ~]# docker run -it centos
/bin/bash [root@6b9a2c459ae2 /]# #主机名改变为镜像名(镜像id),说明此时进入容器 exit
* exit #退出容器,直接停止容器并退出
* Ctrl + Q + P #退出容器,容器不停止运行
* docker ps #查看运行中的容器
* docker ps -a #查看所有的容器
* docker ps -aq #查看所有的容器Id [root@szs /]# docker ps -a CONTAINER ID IMAGE
COMMAND CREATED STATUS PORTS NAMES 6b9a2c459ae2 centos"/bin/bash" 4 minutes ago
Exited(0) About a minute ago vigorous_bose c2d43c1fde5a centos "-it /bin/bash" 4
minutes ago Created pedantic_feistel
* docker rm -f 容器id #删除容器
* docker rm -f 容器id 容器id 容器id #删除容器
* docker rm -f $(docker ps -aq) #删除所有容器 [root@szs /]# docker rm -f $(docker
ps -aq) 6b9a2c459ae2 c2d43c1fde5a
启动和停止容器操作

* docker start 容器id #启动容器
* docker restart 容器id #重启容器
* docker stop 容器id #停止当前正在运行的容器
* docker kill 容器id #停止当前正在运行的容器

技术
下载桌面版
GitHub
Gitee
SourceForge
百度网盘(提取码:draw)
云服务器优惠
华为云优惠券
腾讯云优惠券
阿里云优惠券
Vultr优惠券
站点信息
问题反馈
邮箱:[email protected]
吐槽一下
QQ群:766591547
关注微信