Docker-常见命令

1.命令介绍

其中,比较常见的命令有:

命令 说明 文档地址
docker pull 拉取镜像 docker pull
docker push 推送镜像到DockerRegistry docker push
docker images 查看本地镜像 docker images
docker rmi 删除本地镜像 docker rmi
docker run 创建并运行容器(不能重复创建) docker run
docker stop 停止指定容器 docker stop
docker start 启动指定容器 docker start
docker restart 重新启动容器 docker restart
docker rm 删除指定容器 docs.docker.com
docker ps 查看容器 docker ps
docker logs 查看容器运行日志 docker logs
docker exec 进入容器 docker exec
docker save 保存镜像到本地压缩文件 docker save
docker load 加载本地压缩文件到镜像 docker load
docker inspect 查看容器详细信息 docker inspect

用一副图来表示这些命令的关系:

补充:

默认情况下,每次重启虚拟机我们都需要手动启动Docker和Docker中的容器。通过命令可以实现开机自启:

bash 复制代码
# Docker开机自启
systemctl enable docker
​
# Docker容器开机自启
docker update --restart=always [容器名/容器id]

2.演示

以Nginx为例演示上述命令。

bash 复制代码
# 第1步,去DockerHub查看nginx镜像仓库及相关信息
​
# 第2步,拉取Nginx镜像
docker pull nginx
​
# 第3步,查看镜像
docker images
# 结果如下:
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
nginx        latest    605c77e624dd   16 months ago   141MB
mysql        latest    3218b38490ce   17 months ago   516MB
​
# 第4步,创建并允许Nginx容器
docker run -d --name nginx -p 80:80 nginx
​
# 第5步,查看运行中容器
docker ps
# 也可以加格式化方式访问,格式会更加清爽
docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}"
​
# 第6步,访问网页,地址:http://虚拟机地址
​
# 第7步,停止容器
docker stop nginx
​
# 第8步,查看所有容器
docker ps -a --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}"
​
# 第9步,再次启动nginx容器
docker start nginx
​
# 第10步,再次查看容器
docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}"
​
# 第11步,查看容器详细信息
docker inspect nginx
​
# 第12步,进入容器,查看容器内目录
docker exec -it nginx bash
# 或者,可以进入MySQL
docker exec -it mysql mysql -uroot -p
​
# 第13步,删除容器
docker rm nginx
# 发现无法删除,因为容器运行中,强制删除容器
docker rm -f nginx

3.命令别名

给常用Docker命令起别名,方便我们访问:

bash 复制代码
# 修改/root/.bashrc文件
vi /root/.bashrc
内容如下:
# .bashrc
​
# User specific aliases and functions
​
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias dps='docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}"'
alias dis='docker images'
​
# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

然后,执行命令使别名生效

bash 复制代码
source /root/.bashrc

接下来,试试看新的命令吧。

相关推荐
bigFish啦啦啦2 小时前
docker proxy
docker
果子⌂3 小时前
容器技术入门之Docker环境部署
linux·运维·docker
Liudef064 小时前
Docker企业级应用:从入门到生产环境最佳实践
docker·容器·eureka
?ccc?5 小时前
容器技术技术入门与 Docker 环境部署
运维·docker·容器
时时刻刻看着自己的心5 小时前
docker启动报错
运维·docker·容器
容器魔方6 小时前
开源之夏2025 | Karmada 社区中选学生名单公布!
云原生·容器·云计算
匆匆那年9676 小时前
Docker容器中安装MongoDB,导入数据
运维·docker·容器
i小溪7 小时前
在使用 Docker 时,如果容器挂载的数据目录(如 `/var/moments`)位于数据盘,只要服务没有读写,数据盘是否就不会被唤醒?
人工智能·docker
蓝纹绿茶10 小时前
【Mac】实现Docker下载安装【正在逐步完善】
macos·docker·容器
2401_8616152811 小时前
跨平台的ARM 和 x86 Docker 镜像:汇编语言实验环境搭建
linux·汇编·ubuntu·docker·容器