docker简单认识

1、帮助命令

docker version
docker info
docker --help

2、镜像命令

docker images             //列出本地主机上的镜像
参数:-a:列出本地所有的镜像(含中间映象层)
     -q:只显示镜像ID
     --digests:显示镜像的摘要信息
     --no-trunc:显示完整的镜像信息
docker search 镜像名字
参数:--no-trunc:显示完整的镜像描述
     -s:列出收藏数不小于指定值的镜像
     --automated:只列出automated build类型的镜像
docker pull 镜像名字              //下载镜像
docker rmi 镜像名字或ID           //删除镜像
参数:-f:删除单个
     -f 镜像名1:TAG 镜像名2:TAG:删除多个
     -f $(docker images -qa):删除全部

3、容器命令

docker run 镜像                   //新建并启动容器
参数:--name="容器新名字":为容器指定一个名称;
     -d:后台运行容器,并返回容器ID,也即启动守护式容器;
     -i:以交互模式运行容器,通常与-t同时使用;
     -t:为容器重新分配一个伪输入终端,通常与-i同时使用;
     -P:随机端口映射;
     -p:指定端口映射,有以下四种格式
        ip:hostPort:containerPort
        ip:containerPort
        hostPort:containerPort
        containerPort
docker ps                       //列出当前所有正在运行的容器
参数:-a:列出当前所有正在运行的容器+历史上运行过的
     -l:显示最近创建的容器。
     -n:显示最近n个创建的容器。
     -q:静默模式,只显示容器编号。
     --no-trunc :不截断输出。
#退出容器
exit              //容器停止退出
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 logs -f -t --tail 容器ID           //查看容器日志
参数:-t:加入时间戳
     -f:跟随最新的日志打印
     --tail:显示最后多少条
docker top 容器ID                         //查看容器内运行的进程
docker inspect 容器ID                     //查看容器内部细节
#进入正在运行的容器并以命令行交互
docker exec -t 容器ID 或 docker attach 容器ID
参数:attch:直接进入容器启动命令的终端,不会启动新的进程。
     exec:是在容器中打开新的终端,并且可以启动新的进程。
docker cp 容器ID:容器内路径 目的主机路径      //从容器内拷贝文件到主机

4、镜像

1、docker分为三部分:镜像、容器、仓库。
2、底层是UnionFS(联合文件系统)。

docker commit -m="提交的描述信息" -a="作者" 容器ID 要创建的目标镜像名:[标签名]

5、容器数据卷

功能:容器的持久化; 容器间继承+共享数据
容器间传递共享(–volumes-from):容器之间配置信息的传递,数据卷的生命周期一直持续到没有容器使用它为止。

#直接命令添加容器数据卷
docker run -it -v /宿主机绝对路径目录:/容器内目录 镜像名
docker run -it -v /宿主机绝对路径目录:/容器内目录:ro 镜像名    //权限 readonly

#DockerFile添加容器数据卷

6、DockerFile解析

Dockerfile是用来构建Docker镜像的构建文件,是由一系列命令和参数构成的脚本。
构建步骤:编写Dockerfile文件、docker build、docker run

基础知识:
   1:每条保留字指令都必须为大写字母且后面要跟随至少一个参数
   2:指令按照从上到下,顺序执行
   3:#表示注释
   4:每条指令都会创建一个新的镜像层,并对镜像进行提交

指令字:
FROM:       基础镜像,当前新镜像是基于哪个镜像的
MAINTAINER: 镜像维护者的姓名和邮箱地址
RUN:        容器构建时需要运行的命令
EXPOSE:     当前容器对外暴露出的端口
WORKDIR:    指定在创建容器后,终端默认登陆的进来工作目录,一个落脚点
ENV:        用来在构建镜像过程中设置环境变量
ADD:        将宿主机目录下的文件拷贝进镜像且ADD命令会自动处理URL和解压tar压缩包
COPY:       类似ADD,拷贝文件和目录到镜像中。将从构建上下文目录中<源路径>的文件/目录复制到新的一层的镜像内的<目标路径>位置
VOLUME:     容器数据卷,用于数据保存和持久化工作
CMD:        指定一个容器启动时要运行的命令,DockerFile中可以有多个CMD指今,但只有最后一个生效,CMD会被docker run之后的参数替换
ENTRYPOINT: 指定一个容器启动时要运行的命令,ENTRYPOINT的目的和CMD一样,都是在指定容器启动程序及参数
ONBULD:     当构建一个被继承的Dockerile时运行命令,父镜像在被子继承后父镜像的onbuild被触发
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一条代码鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值