当前位置: 首页 > news >正文

【5分钟学Docker】Docker快速使用

目录

1. 概述

2. 基本操作

2.1. 镜像操作

2.2. 容器操作

2.3. 运行操作

2.4. 镜像保存

2.5. 镜像分享

3. 高级操作

4. 挂载

4.1. 目录挂载

4.2. 卷映射


1. 概述

Docker 镜像有镜像名称和TAG

2. 基本操作

2.1. 镜像操作

  1. 查看镜像
docker images 
docker image ls
  1. 删除镜像
docker rmi imagesID
docker rmi 名称:TAG
  1. 下载镜像
docker pull nginx:1.26.0
  1. 搜索镜像
docker search nginx

2.2. 容器操作

容器是运行起来的镜像

  1. 运行容器
docker run
  1. 查看运行的容器
docker ps
  1. 停止/启动/重启
docker stop/start/restart CONTAINER_ID
docker stop/start/restart NAMES
  1. 进入镜像
docker exec -it xxxxxNAMES /bin/bash
  1. 查看日志
# 动态获取
docker logs -f 
# 静态查看
docker logs
  1. 删除
docker rm ID
# 强制删除
docker rm -f ID

2.3. 运行操作

  1. 容器的端口可以重复,但是外部机器的端口不能重复
docker run -p <主机端口>:<容器端口> <镜像名>
docker run -d --name mynginx -p 88:80 ngxin:TAG
-d: 后台运行
--name:容器名称
-p 端口映射: 80:88 内部80 外部访问88
  1. 进入容器进行操作
docker exec -it <容器名称> 交换脚本
docker exec -it mynginx /bin/bash

2.4. 镜像保存

  1. 通过docker run 运行后,进行自定义安装或者修改一些配置
  2. 然后提交修改内容:这里的mynginx是一个运行的容器
docker commit -m 'update index.thml' mynginx  mynginx:V1.0[root@sda ~]# docker commit -m 'update index.html' mynginx mynginx:V1.0
sha256:6d11a54e6725515d5559bf96fa6aeeda4b1daf79887eb78e6c3befeaadad27a0
  1. 提交后,通过docker images 可以看到有镜像 myginx V1.0

  1. 然后在对镜像进行保存成tar便于转移到其他机器上
docker save -o mynginx.tar mynginx:V1.0
  1. 加载镜像
 docker load -i mynginx.tar  -q-i 加载tar的文件-q 表示加载过程中不展示加载信息
  1. 运行
 docker run --name mynginx --rm -d -p 89:80 mynginx:V1.0
  1. 查看容器的占用
docker statsCONTAINER ID        NAME                               CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O           PIDS
9b54842016a0        mynginx                            0.00%               10.33MiB / 31.26GiB   0.03%               2.73kB / 2.05kB     0B / 0B             17
e2b4c27dbe59        work_nginx-server_1                0.00%               78.02MiB / 31.26GiB   0.24%               32.7GB / 32.5GB     7MB / 0B            17

2.5. 镜像分享

# 改名
docker tag 旧名字 新名字 # 这个会复制一个新的,而不是直接改,可以把之前的删除就行了
docker tag mynginx:V1.0 mynginx:V2.0[root@sda ~]# docker images
REPOSITORY   TAG    IMAGE ID            CREATED             SIZE
mynginx      V1.0   6d11a54e6725        15 hours ago        192MB
mynginx      V2.0   6d11a54e6725        15 hours ago        192MB

3. 高级操作

  1. 查询所有的容器的ID
docker ps -aq
-a : 所有的镜像
-q : 只打印容器ID[root@sda ~]# docker ps -aq
9b54842016a0
e2b4c27dbe59
694eeba1ae38
975bb0ad0124
0c0f3ddc3b79
  1. 删除所有的容器
docker rm -f $(docker ps -aq)
-f:强制删除
  1. 开机启动
docker --restart always

4. 挂载

4.1. 目录挂载

容器一旦重启或者重新创建,那么文件数据都是丢失,所以这个时候需要通过挂载目录,实现数据持久化

使用参数

-v /aa/aaa:/aaaa/bbb
-v 主机目录:容器内目录
如果一开始没有/aa/aaa 那么他会自动创建。docker会以外部的数据为准,所以外部没有数据
那么内部也是没有数据的

4.2. 卷映射

当我们通过目录挂载时,会发现因为-v是以外部为主,所以当我们使用目录挂载,比如挂载容器的内部的默认配置文件时,会出现如果外部没有这些配置文件,那么就会导致出现内部也没有,那么容器就可能会启动失败,所以这个时候就需要用到卷映射

卷映射

-v 卷名:/etc/nginx
卷名不以./ 为名称就是卷名,否是就是目录挂载
docker run -d -p 89:80 --name mynginx -v /tmp/nginx/html:/usr/share/nginx/html -v ngconfig:/etc/nginx mynginx:V2.0

卷的数据都在哪里呢:默认都在/var/lib/docker/volumes/卷名/_data下

[root@sda html]# cd /var/lib/docker/volumes/ngconfig/
[root@sda ngconfig]# ls
_data
[root@sda ngconfig]# cd _data/
[root@sda ngconfig]# ls
conf.d  fastcgi_params  mime.types  modules  nginx.conf  scgi_params  uwsgi_params
[root@sda _data]# pwd
/var/lib/docker/volumes/ngconfig/_data
  1. 卷操作
1. 查看卷
docker volume ls 
2. 创建卷
docker volume create test
3. 查看某个卷的详情
docker volume inpspect test

相关文章:

  • 计算机网络:深度解析基于链路状态的内部网关协议IS-IS
  • springmvc实现文件上传
  • 为什么消息队列系统不像数据库系统那样可以配置读写分离?
  • 【css】css统一设置变量
  • 03 mysql 连接
  • Linux 内核中的 security_sk_free:安全模块与 Socket 释放机制解析
  • 掌握单元测试:提升软件质量的关键步骤
  • MySQL + Elasticsearch:为什么要使用ES,使用场景与架构设计详解
  • idea spring boot 打包成可执行的 JAR包
  • SpringBoot默认并发处理(Tomcat)、项目限流详解
  • .NET高频技术点(持续更新中)
  • 软件确认报告:审查功能、评估标准及推动软件稳定高效运行
  • 【图片识别内容改名】图片指定区域OCR识别并自动重命名,批量提取图片指定内容并重命名,基于WPF和阿里云OCR识别的解决
  • 【OpenAI】Updating your OpenAI library to the latest version
  • MySQL高可用方案全攻略:选型指南与AI运维实践
  • Linux——Mysql数据库操作
  • keepalived详细笔记
  • 【react组件】矩形框选小组件,鼠标左键选中 div,键盘 ESC 清空
  • Transformer编码器+SHAP分析,模型可解释创新表达!
  • 开源AI对比--dify、n8n
  • 本周看啥|喜欢二次元的观众,去电影院吧
  • 越怕出错越会出错,“墨菲定律”的魔咒该怎么破?
  • “上海之帆”巡展在日本大阪开幕,松江区组织企业集体出展
  • 我驻苏丹使馆建议在苏中国公民尽快撤离
  • 司法部:持续规范行政执法行为,加快制定行政执法监督条例
  • 4月深圳新房、二手房成交同比均上涨,“5月有望延续积极向好的发展态势”