systemctl start docker
systemctl stop docker
systemctl restart docker
systemctl status docker
systemctl enable docker
docker info
docker - help
docker 具体命令 -- help
REPOSITORY:表示镜像的仓库源
TAG:镜像的标签版本号
IMAGE ID:镜像ID
CREATED:镜像创建时间
SIZE:镜像大小
注意:同一个仓库源可以有多个TAG版本,代表这个仓库源的不同版本,使用REPOSITORY:TAG来定义不同的镜像,如果不指定,则默认使用ubuntu:latest镜像
(1) -a: 列出本地所有的镜像(含历史映像层)
(2) -q: 只显示镜像ID
docker search [OPTIONS]镜像名字
NAME:镜像名称
DERCRIPTION:镜像说明
STARS:点赞数量
OFFICIAL:是否是官方的
AUTOMATED:是否是自动构建的
(1)–limit //只列出N个镜像,默认25个
(2)docker search --limit 5 redis //列出前五个
docker pull 镜像名字[:TAG]
例如:
docker pull mysql:6.0.8
docker pull 镜像名字
没有TAG就是最新版等价于docker pull镜像名字: latest
docker system df
docker rmi 某个镜像名字ID
docker rmi -f 镜像ID
docker rmi -f 镜像名1:TAG 镜像名2:TAG
docker rmi -f $(docker images -qa)
虚悬镜像dangling image(仓库名、标签都是的镜像,建议删除)
有镜像才能创建容器
docker run [OPTIONS] IMAGE [COMMAND] [ARG…]
例如:
docker run -it ubuntu /bin/bash
有些是-一个减号,有些是两个减号
(1)–name="容器新名字”为容器指定一个名称
例如:
docker run -it --name="U01" ubuntu /bin/bash
(2)-d: 后台运行容器并返回容器ID,也即启动守护式容器(后台运行)。
(3)-i: 以交互模式运行容器,通常与-t同时使用。
(4)-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用,也即启动交互式容器(前台有伪终端,等待交互);
(5)-P: 随机端口映射,大写P
(6)-p: 指定端口映射,小写p
(1)使用镜像ubuntu以交互模式启动一个容器,在容器内执行/bin/bash命令
docker run -it ubuntu /bin/bash
(2)参数说明
-i:交互式操作
-t:终端
ubuntu : ubuntu镜像
/bin/bash:放在镜像名后的是命令,这里希望有个交互式Shell,因此用的是/bin/bash.
要退出终端,直接输入exit
docker ps [options]
-a :列出当前所有正在运行的容器+历史上运行过的
-l:显示最近创建的容器。
-n:显示最近n个创建的容器。
-q:静默模式,只显示容器编号。
例:docker ps -a
run进去容器,exit退出, 容器停止
run进去容器,ctrl+p+q退出,容器不停止
docker start 容器ID或者容器名
docker restart 容器ID或者容器名
docker stop 容器ID或者容器名
docker kill 容器ID或容器名
docker rm 容器ID
docker rm -f $(docker ps -a -q)
docker ps -a -q | xargs docker rm
一般在大部分的场景下,希望docker的服务是在后台运行的,我们可以通过-d指定容器的后台运行模式
docker run -d 容器名
(1)前台交互式启动
docker run -it redis
(2)后台守护式启动
docker run -d redis
docker logs 容器ID
docker top 容器ID
docker inspect 容器ID
docker exec -it 容器ID /bin/bash
注意:exec是在容器中打开新的终端,并且可以启动新的进程,用exit退出,不会导致容器的停止。
docker attach 容器ID
注意:attach直接进入容器启动命令的终端,不会启动新的进程,用exit退出,会导致容器的停止。
docker cp 容器ID:容器内路径 目的主机路径
export 导出容器的内容留作为一个tar归档文件[对应import命令]
import从tar包中的内容创建一个新的文件系统再导入为镜像[对应export]
docker export 容器ID > 文件名.tar
cat 文件名.tar | docker import - 镜像用户 /镜像名:镜像版本号
//导出到主机
docker export ddb1ae909a66 > abc.tar
//导入
cat abc.tar | docker import - atguigu/ubuntu:3.4
未完待续