[root@test ~]$ docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
centos latest 0d120b6ccaa8 2 months ago 215MB
[root@test ~]$ docker image tag 0d120b6ccaa8 ubuntu:latest # 修改镜像名称[root@test ~]$ docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
centos latest 0d120b6ccaa8 2 months ago 215MB
ubuntu latest 0d120b6ccaa8 2 months ago 215MB
```如果原有镜像有tag,那么在修改是一个镜像连接。如果是none,则会改成修改的tag名称
容器篇 container
容器的运行是通过基础镜像 image
1、交互式启动容器
# 交互式运行容器,退出容器数据也没了[root@test ~]$ docker container run -it IMAGE ID 或者REPOSITORY:TAG 启动保留运行状况
[root@test ~]$ docker container run -it --rm 0d120b6ccaa8 退出即销毁
# 交互式运行容器,指定容器名字[root@test ~]$ docker container run -it --name="test" 0d120b6ccaa8 启动保留运行状况
[root@test ~]$ docker container run -it --name="test" --rm 0d120b6ccaa8 退出即销毁
```-it 代表交互式运行
```0d120b6ccaa8 是 IMAGE ID
``` docker container == docker
```--rm 表示容器退出即删除运行的容器名称这些,docker container ls -a 看不到
1.1、守护式启动容器
# By lumia98@vip.qq.com[root@test ~]$ docker container run -d --name="mynginx" nginx
```-d 后台运行
```--name 自定义启动后的容器名称
```nginx 是容器名称
2、端口映射方式启动容器
[root@test ~]$ docker run -d -p 8080:80 --name="test_nginx_80" nginx:latest
# 查看运行情况,因为太长了,删除了部分显示数据
```-p 8080:80 代表宿主系统的8080端口映射到容器的80端口
[root@test ~]$ docker container ls
CONTAINER ID STATUS PORTS NAMES
f423ef23e6d2 Up 38 seconds 0.0.0.0:8080->80/tcp test_nginx_80
# 指定ip映射端口
[root@test ~]$ docker container run -d -p 172.21.3.211:808:80 --name="nginx_80" nginx
```指定172.21.3.211的808端口映射到容器的80端口
```172.21.3.211::80 随机生成端口映射
```172.21.3.211:53:53:udp 映射一个udp的端口
[root@test ~]$ docker container ls
CONTAINER ID IMAGE STATUS PORTS NAMES
25373f4de987 nginx Up 23 seconds 172.21.3.211:80->80/tcp nginx_80
[root@test ~]$ docker container stop 4415113ae7f6
```4415113ae7f6 是 CONTAINER ID
5、删除不需要的容器
# 先查看不需要的容器,找到CONTAINER ID[root@test ~]$ docker container ls -a
# 删除[root@test ~]$ docker container rm 4415113ae7f6
# 删除所有容器--->慎用[root@test ~]$ docker container rm`docker container ls -a -q`
6、查看运行的容器
# By lumia98@vip.qq.com# 查看正在运行的容器[root@test ~]$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
87541ee352bc 0d120b6ccaa8 "/bin/bash" 6 minutes ago Up 6 minutes ecstatic_gauss
```注释
CONTAINER ID # 容器的唯一号码(自动生成)
NAMES # 容器名称(启动时没有设置,则自动创建)
STATUS # 运行状态: Up 代表运行中; Exited 代表退出# 查看运行过的所有容器[root@test ~]$ docker container ls -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6e756e7613f0 0d120b6ccaa8 "/bin/bash" 2 minutes ago Up 2 minutes test
87541ee352bc 0d120b6ccaa8 "/bin/bash" 15 minutes ago Exited (0) 3 minutes ago ecstatic_gauss
7、查询容器的详细信息(包括ip等信息)
[root@test ~]$ docker container inspect nginx
```nginx 是运行的容器名称NAMES,也可以用 CONTAINER ID