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

docker的基本命令

容器的三大组成

   镜像image  一个静态文件,特点:分层结构,不可更改

   容器container  镜像运行的结果,容器可以修改,运行完后直接停止

   仓库registry  用来存放镜像文件的地方

容器的常用命令介绍

   关于镜像的命令

   docker  pull  镜像名     //拉取镜像

   docker  inspect  镜像名     //查看镜像的详细信息

   docker  images                 //查看本地镜像

   docker  rmi    镜像名        //删除镜像

   docker  save  -o  xx.tar  httpd    //将镜像保存为压缩文件

   docker  load  -i  xx.tar        //将压缩文件的镜像载入到本地镜像

   docker  push  镜像名         //上传镜像到仓库

   docker  rmi  $(docker  images  -aq)    //删除所有本地镜像

  关于容器的命令

   docker  run  镜像名  //运行镜像

       -it   交互式并给定一个终端/bin/bash

       -d   后台运行

       --name   指定容器名

       -p  本机端口:容器端口     //指定映射端口

   docker  inspect   容器名     //可以查看容器的地址等详细信息

   docker  ps     //查看运行的容器

   docker  ps  -a   //查看运行过的和正在运行的容器

   docker  rm  容器名    //删除容器

   docker  rm  -f  容器名    //强制删除正在运行的容器

   docker  commit  容器名   镜像名:tag      //将容器提交成一个镜像

   docker  cp  容器名:/aa    本地路径         //容器到本机的文件复制

   docker  cp   本地路径    容器名:/aa      //本机到容器的复制

   docker  exec   -it   容器名   /bin/bash    //进入容器shell

   docker  attach  容器名           //进入容器

      exec 打开容器的新进程      attach 只用容器自身进程

   docker  start/stop/restart  容器名   //容器的启动/停止/重启

   docker  pause  容器名     //容器挂起

   docker  unpause  容器名    //将挂起的容器恢复运行

   docker  container  prune    //清空所有被停止的容器

实验:ubuntu系统

 1,拉取如下镜像

将centos:7 镜像保存为压缩文件上传到另一台安装了docker 的主机上并在其上载入压缩镜像

docker save -o centos7.tar centos:7

scp centos7.tar root@192.168.38.5:/root

另一台docker主机

docker load -i centos7.tar

分别运行ubuntu 和 centos:7 的镜像在后台运行

docker run -itd --name my-u ubuntu /bin/bash

docker run -itd --name my-c centos:7  /bin/bash

在运行的centos:7镜像容器中创建 centos7.repo 文件并配置本地yum 源

   docker exec -it my-c /bin/bash

   cd /etc/yum.repos.d/

   rm -rf *

   vi centos7.repo

   exit

将配置好本地yum 源的容器提交成新的镜像

    docker commit my-c centos7.1

运行新镜像查看yum 源是否保留

   docker run -itd --name my-c1 centos7.1 /bin/bash

   docker exec -it my-c1 /bin/bash

   cat /etc/yum.repos.d/centos7.repo

  

在 ubuntu 镜像容器中使用 apt update 更新 测试是否可以实现

   docker exec -it my-u /bin/bash

   apt update

复制本机的任意文件到ubuntu 容器中

docker cp nginx.sh  my-u:/root

docker exec -it my-u /bin/bash

ls /root

停止ubuntu 容器并删除容器

    docker  stop  my-u

   

     docker rm my-u  

强制删除centos:7 的镜像容器 只保留新的配好yum 源的容器

     docker rm -f my-c

分别运行 httpd 和 nginx 镜像 端口映射分别是 8081:80   8082:80

     docker run -d -p 8081:80 --name my-h httpd

     docker run -d -p 8082:80 --name my-n nginx

通过本机浏览器访问虚拟机ip +端口测试是否可以访问容器网页

    

    

在运行一个 httpd 但不映射端口 查看容器地址 用本机curl 访问容器网页

      docker run -d --name my-h1 httpd

      docker inspect my-h1

    

     curl 172.17.0.5

     

拉取镜像 busybox 

docker pull busybox

http://www.lryc.cn/news/2400972.html

相关文章:

  • 【运维实战】Rsync将一台主Web服务器上的文件和目录同步到另一台备份服务器!
  • 实时通信RTC与传统直播的异同
  • Python-正则表达式(re 模块)
  • AgenticSeek 本地部署教程(Windows 系统)
  • 基于 qiankun + vite + vue3 构建微前端应用实践
  • VR教育:开启教育新时代的钥匙
  • 机器学习:逻辑回归与混淆矩阵
  • 20250602在荣品的PRO-RK3566开发板的Android13下打开HDMI显示
  • 【学习记录】快速上手 PyQt6:设置 Qt Designer、PyUIC 和 PyRCC 在 PyCharm中的应用
  • AI在网络安全领域的应用现状和实践
  • DrissionPage 异常处理实战指南:构建稳健的网页自动化防线
  • 鸿蒙任务项设置案例实战
  • TDengine 的 AI 应用实战——运维异常检测
  • DHCP与DNS的配置
  • 使用Plop.js高效生成模板文件
  • Vue框架2(vue搭建方式2:利用脚手架,ElementUI)
  • mac 设置cursor (像PyCharm一样展示效果)
  • SpringCloudAlibaba微服务架构
  • Java高级 | 【实验三】Springboot 静态资源访问
  • C语言_预处理详解
  • 将前后端分离版的前端vue打包成EXE的完整解决方案
  • 物联网协议之MQTT(一)基础概念和设备
  • 「Java教案」Java程序的构成
  • 还原Windows防火墙
  • 区块链可投会议CCF B--EDBT 2026 截止10.8 附录用率
  • 经典ReLU回归!重大缺陷「死亡ReLU问题」已被解决
  • 在VSCode中开发一个uni-app项目
  • quic为什么没有被大规模应用?
  • Delft3D软件介绍及建模原理和步骤;Delft3D数值模拟溶质运移模型建立;地表水环境影响评价报告编写思路
  • 书籍在其他数都出现k次的数组中找到只出现一次的数(7)0603