docker的常用命令
基础命令
docker version # 显示docker的版本信息
docker info # 显示docker的系统信息,包括镜像和容器的数量
docker 命令 –help # 帮助命令
帮助文档的地址:https://docs.docker.com/engine/reference/commandline/build/
docker pull:用于从远程仓库拉取镜像到本地。
docker images:查看本地已有的镜像列表。
docker run:基于镜像创建并启动一个容器。
docker ps:查看正在运行的容器列表。
docker stop:停止一个正在运行的容器。
docker rm:删除一个已停止的容器。
docker rmi :删除一个镜像
docker history
systemctl start docker #启动docker
systemctl stop docker #关闭docker
systemctl restart docker #重启docker
systemctl enable docker #设置开机自启动
systemctl status docker #查看docker运行状态
镜像命令
docker images 查看镜像
[root@localhost /]# docker images
:::tips
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest bf756fb1ae65 5 months ago 13.3kB
:::
#解释
REPOSITORY 镜像的仓库源
TAG 镜像标签
IMAGE ID 镜像id
CREATED 镜像的创建时间
SIZE 镜像的大小
#可选项
Options:
-a, –all # 列出所有镜像
-q, –quiet # 只显示镜像id
docker search 搜索镜像
[root@localhost /]# docker search mysql
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
mysql MySQL is a widely used, open-source relation… 9604 [OK]
mariadb MariaDB is a community-developed fork of MyS… 3490 [OK]
#解释
NAME 镜像名称
DESCRIPTION 镜像描述
STARS 镜像的评分
OFFICIAL 是否为官方镜像
AUTOMATED 是否为自动构建镜像
#可选项,通过收藏来过滤
–filter=STARS=3000 #搜索出来的镜像就是STARS大于3000的
[root@localhost /]# docker search mysql –filter=STARS=3000
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
mysql MySQL is a widely used, open-source relation… 9604 [OK]
mariadb MariaDB is a community-developed fork of MyS… 3490 [OK]
docker pull 下载镜像
#下载镜像 docker pull 镜像名[:tag]
[root@localhost /]# docker pull mysql
Using default tag: latest # 如果不写 tag,默认就是latest
docker pull mysql 等价于: docker pull docker.io/library/mysql:latest
#指定版本下载
[root@localhost /]# docker pull mysql:5.7
Docker构建
要构建自己的Docker镜像,可以使用以下命令:
docker build [OPTIONS] PATH | URL | -
docker build:构建镜像的命令。
[OPTIONS]:可选参数,用于配置构建过程,如镜像标签、构建上下文路径等。
PATH | URL | -:Dockerfile所在的路径、URL或者使用标准输入作为Dockerfile。
docker push 推送镜像
要将本地的镜像推送到Docker仓库,可以使用以下命令:
docker push [OPTIONS] NAME[:TAG]
docker push:推送镜像的命令。
[OPTIONS]:可选参数,用于配置推送过程,如认证信息等。
NAME[:TAG]:要推送的镜像名称和标签。
docker rmi 删除镜像
[root@localhost /]# docker rmi -f 镜像id #删除指定镜像
[root@localhost /]# docker rmi -f 镜像id 镜像id 镜像id #删除多个镜像
[root@localhost /]# docker rmi -f $(docker images -aq) #删除全部镜像
容器命令
容器保护三个状态:
运行:进程正常运行</>
暂停:进程暂停,CPU不再运行,并不释放内存
停止:进程终止,回收进程占用的内存、CPU等资源
其中:
docker run:创建并运行一个容器,处于运行状态
docker pause name:让一个运行的容器暂停
docker unpause name:让一个容器从暂停状态恢复运行
docker stop name:停止一个运行的容器(杀死进程、回收内存,仅剩文件系统)
docker start name:让一个停止的容器再次运行
docker restart name:重启容器
docker rm:删除一个容器(进程、内存回收、文件系统彻底干掉)
新建容器并启动
docker run [可选参数] image
#参数说明
–name=”Name” 容器名字 tomcat01 tomcat02 ,用来区分容器
-d 后台方式运行
-it 使用交互方式运行,进入容器查看内容
-p 指定容器的端口 -p8080:80
-p ip:主机(即宿主机)端口:容器端口
-p 主机端口:容器端口 #这种方式常用
-p 容器端口
容器端口P
-P 随机指定端口(大写P)
列出所有运行的容器
#docker ps 命令
(不加) # 列出当前正在运行的容器
-a # 列出当前正在运行的容器 + 带出历史运行过的容器
-n=? # 显示最近创建的容器
-q # 只显示当前容器的编号
退出容器
exit # 直接退出容器
Ctrl + p + q # 容器不停止退出
删除容器
docker rm 容器id # 删除指定容器,不能删除正在运行的容器,如果要强制删除 rm -f
docker rm-f$(docker ps -aq) # 删除所有容器
docker ps-a-q|xargs docker rm # 删除所有容器
启动和停止容器的操作
docker start 容器id # 启动容器
docker restart 容器id # 重启容器
docker stop 容器id # 停止当前正在运行的容器
docker kill 容器id # 强制停止当前正在运行的容器