Docker:命令
- 1. 创建MySQL的命令解读
- 2. 基础命令
- 3. 案例 查看DockerHub,拉取Nginx镜像,创建并运行Nginx容器
- 4. 命令别名
- 附录
1. 创建MySQL的命令解读

docker run:创建并运行一个容器,-d 是让容器在后台运行--name:给容器起一个名字-p:端口映射,前面是宿主机的端口,后面是MySQL的端口-e:-e KEY=VALUE是设置环境变量
镜像命名规范
- 镜像名称一般由两部分组成:
[repository]:[tag]- 其中repository就是镜像的名字
- tag是镜像的版本

- 在没有指定tag时,默认是latest,代表镜像的最新版本
2. 基础命令
Docker最常见的命令就是操作镜像、容器的命令,详见官方文档:https://docs.docker.com/

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

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

补充:
默认情况下,每次重启虚拟机我们都需要手动启动Docker和Docker中的容器。通过命令可以实现开机自启:
# Docker开机自启
systemctl enable docker# Docker容器开机自启
docker update --restart=always [容器名/容器id]
3. 案例 查看DockerHub,拉取Nginx镜像,创建并运行Nginx容器
-
在DockerHubhttps://hub.docker.com/中搜索Nginx镜像,查看镜像的名称

-
拉取Nginx
docker pull nginx

- 查看镜像 docker images

-
docker保存镜像到本地压缩文件,
docker save -o 文件名 镜像名:镜像版本


-
创建并运行Nginx容器
docker run -d --name nginx -p 80:80 nginx

- 查看运行中容器
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}}"
-
再次启动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
补充:
删除镜像nginx
docker rmi nginx:latest

强删除nginx

docker images

docker加载打成tar包的nginx



查看容器日志
docker logs nighx
docker logs -f nighx 持续输出日志

4. 命令别名
在vim ~/.bashrc中


最后source ~./bash
# 修改/root/.bashrc文件
vi /root/.bashrc
内容如下:
# .bashrc# User specific aliases and functionsalias 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最后
source /root/.bashrc
附录
1.黑马Docker笔记