systemctl start docker
systemctl stop docker
systemctl restart docker
systemctl status docker
systemctl enable docker
docker info
docker --help
docker 具体命令 --help
1. 列出当前主机上的镜像 docker images
说明:
REPOSITORY:表示镜像的仓库源
TAG:镜像的标签版本号
IMAGE ID:镜像ID
CREATED:镜像创建时间
SIZE:镜像大小
同一仓库源可以有多个 TAG版本,代表这个仓库源的不同个版本,我们使用 REPOSITORY:TAG 来定义不同的镜像。
如果不指定一个镜像的版本标签,例如只使用 ubuntu,docker 将默认使用 ubuntu:latest 镜像
docker image -a : 列出本地所有镜像
docker image -q : 只显示镜像id
2. 查询镜像 docker search
docker search --limit 5 hello-world
: 只列出指定数量的镜像
3. 下载镜像 docker pull
docker pull 镜像名字[:TAG]
没有tag就是默认latest最新版
4. 删除镜像 docker rmi
docker rmi 镜像id
docker rmi 镜像名字
删除多个镜像 docker rmi 镜像id1 镜像id2...
删除所有镜像: docker rmi -f $(docker images -qa)
注意:如果镜像有容器启动,要么先停止容器再删除,或者加上-f选项删除 docker rmi -f 镜像id
有了镜像才能创建容器
1. 创建容器
docker run [--name] [-d] [-i] [-t] 镜像名
–name表示指定容器名称,不指定会随机分配一个名字,
-d表示在后台运行
-i表示以交互模式运行容器,通常与 -t 同时使用
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用
2. 退出容器
输入exit:退出并且容器停止
ctrl+p+q退出,容器不停止
3. 启动已停止运行的容器
docker start 容器ID或者容器名
4. 重启容器
docker restart 容器ID或者容器名
5. 停止容器
docker stop 容器ID或者容器名
6. 强制停止容器
docker kill 容器ID或者容器名
7. 删除已经停止容器
docker rm 容器ID或者容器名
删除多个: docker rm 容器ID1或者容器名1 容器ID2或者容器名2....
删除所有: docker rm -f $(docker ps -a -q)
8.后台运行与前台运行
需要后台运行的容器比如: redis
需要前台运行的容器比如: ubuntu(需要与其交互)
exec和attach的区别:
exec 是在容器中打开新的终端,并且可以启动新的进程 用exit退出,不会导致容器的停止
attach 直接进入容器启动命令的终端,不会启动新的进程 用exit退出,会导致容器的停止
一般用-d后台启动的程序,再用exec进入对应容器实例
9. 从容器内拷贝文件到主机