docker命令

如果运行的服务在docker中运行,想要访问的话要进入容器中,然后才能访问

容器相当于是镜像实例化出来的对象【相互关系解释】

各容器通过服务器内网ip进行互相沟通

命令效果
docker images查看docker中所有镜像/可加 -f 使用过滤器/可加 -q 只输出镜像ID
docker images 镜像名查看docker中所有指定名字的镜像
docker images 镜像名:tag名查看docker中所有指定名字和tag的镜像
docker save 镜像名:镜像版本号 -o 镜像文件名保存docker中的镜像文件到文件目录
docker rmi 镜像ID从系统docker中移除指定镜像
docker load --input 镜像压缩包名.tar加载镜像压缩包中的镜像到系统docker
docker load < 镜像压缩包名.tar加载镜像压缩包中的镜像到系统docker,与上一条等价
docker ps看docker中所有还在跑的容器
docker ps -a看docker中所有容器,包括已经死了的
docker logs -f 容器ID查看指定容器的日志
docker rm -f 容器ID从系统docker中移除指定容器
docker exec -it 容器ID /bin/bash进入指定容器,并且进入bash【命令行工具】
docker system df查看Docker的磁盘使用情况
docker system prune清理磁盘,删除关闭的容器、无用的数据卷和网络,以及dangling镜像(即无tag的镜像)
docker system prune -a清理得更加彻底,可以将没有容器使用Docker镜像都删掉。注意,这个命令会把你暂时关闭的容器,以及暂时没有用到的Docker镜像都删掉。所以使用之前一定要想清楚
docker run -p 宿主机端口:容器里面的端口 --restart-always -d -v 宿主机绝对路径:容器里面的路径/opt/kvp 镜像名用指定镜像起一个带守护进程的容器
docker run -p 宿主机端口:容器里面的端口 -d --env-file=配置文件  镜像名在跑容器时加载指定配置文件中的环境变量
docker system df查看镜像、容器、数据卷所占用的空间
docker image ls -f dangling=true查看没有镜像名的虚悬镜像
docker image prune删除虚悬镜像
free -h查看机器的内存配置
docker container start将一个已经终止的容器启动运行
docker container ls展示在跑的所有容器
docker container ls -a展示所有容器,包括已经终止的
docker container stop中止一个运行中的容器
docker container restart将一个运行中的容器终止,后重新启动
docker container rm删除一个终止的容器
docker container rm -f删除一个容器,无所谓此容器是否终止
docker container prune删除所有处于终止状态的容器
docker export 容器id > 文件名保存一个容器的快照
cat 文件名 | docker import - 容器名:tag从文件中加载一个容器快照,同时设定容器名和tag
docker search 镜像名查找官方仓库中的镜像
docker pull 镜像名拉取指定镜像
docker inspect 容器名查看容器信息

跑容器时的参数及意义

命令效果
–restart=“always”自动持久化,死了自动拉起来
-p 宿主机端口:容器里面的端口设置端口映射关系,可多次使用映射多个端口
-d跑起来以后不打印镜像日志/类似于nohup跑
-v 宿主机绝对路径:容器里面的绝对路径文件目录挂载,将宿主机里的目录挂载进容器的指定目录中,可用此实现文件存储路径的挂载和配置文件的挂载/可以挂载目录也可以挂载具体的文件
-v 数据卷名称:容器里面的绝对路径将数据卷挂载到容器的指定目录
–mount type=bind,source=宿主机绝对路径,target=容器里面的绝对路径将宿主机里的目录挂载进容器的指定目录中,与-v的区别是如果宿主机路径不存在,–mount不会自动创建
–mount source=数据卷名称,target=容器里面的绝对路径将数据卷挂载到容器的指定目录
–env-file=环境变量文件在跑镜像的时候手动加载环境变量文件,这样加载的环境变量会成为优先配置
–rm容器退出后随即删除,一般用于测试
-i交互式操作
-t终端
-it 镜像名/容器名 bash一般这么用,表示进入容器的bash界面

dockerfile指令

指令效果
RUN Linux指令在镜像中执行目标指令
COPY 本地路径 镜像内目标路径将本地路径拷贝到镜像内的目标路径,本地路径可以指向具体文件也可以指向目录【如conf/*】
ADD 本地路径 镜像内目标路径基本和COPY一致,当本地路径指向一个tar压缩文件时,ADD指令会自动将其解压后再放入镜像
CMD Linux指令在镜像中执行目标指令,此用法与RUN无异
CMD [“可执行文件”, “参数1”, “参数2”…]在镜像中执行指定的可执行文件,并带上相应参数,一般用于指定默认的容器主进程的启动命令
ENTRYPOINT与以上CMD的两种使用方法无异,但如果有ENTRYPOINT时,CMD将会变为给ENTRYPOINT传参,执行语句为  “”
ENV key value声明环境变量,声明后可用$key调用环境变量,容器运行时也可以使用此环境变量
ENV key=value声明环境变量,声明后可用$key调用环境变量,容器运行时也可以使用此环境变量
ARG用法同ENV,但在容器运行时是无法使用ARG定义的环境变量的
VOLUME 目录指定目录挂载为匿名卷,这样在运行时没有指定挂载卷也不会报错
EXPOSE 端口声明运行时容器提供服务端口,仅为声明,并不会真的做什么操作
WORKDIR 工作目录路径指定之后的工作目录,在流程中相当于cd/如果目标目录不存在则会自动创建
USER 用户名指定之后执行命令的用户身份
HEALTHCHECK [选项] CMD <命令>设置检查容器健康状况的命令
HEALTHCHECK NONE如果基础镜像有健康检查指令,使用这行可以屏蔽掉其健康检查指令
ONBUILD 其它指令在当前镜像构建时并不会被执行,以当前镜像为基础镜像,去构建下一级镜像的时候才会被执行

数据管理

指令效果
docker volume create 数据卷名称创建数据卷
docker volume ls查看所有数据卷
docker volume inspect 数据卷名称查看指定数据卷信息
docker volume rm 数据卷名称删除数据卷
docker volume prune删除所有无主的数据卷【容器终止时数据卷不会被删除
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值