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

Docker使用指南(二)——容器相关操作详解(实战案例教学,创建/使用/停止/删除)

目录

1.容器操作相关命令​编辑

案例一:

案例二:

容器常用命令总结:

1.查看容器状态:

2.删除容器:

3.进入容器:


二、Docker基本操作——容器篇

1.容器操作相关命令

下面我们用两个案例来具体实操一下这些容器命令,方便大家更好的理解:

案例一:

创建并且运行一个Nginx容器


步骤一:去docker hub查看Nginx的容器运行命令

首先docker hub官网搜索 Nginx,切换到Overview这一栏;

然后往下滑,找到 How to use this image栏目,可以看到很多种方式,找一个相对简单的命令复制;

docker run --name some-nginx -d -p 8088:80 nginx

命令解读:

  • docker run:创建并运行一个容器

  • -name:给容器起一个名字,比如叫做 some-nginx

  • -d:后台运行容器。如果不加 ,容器会在前台运行,并占用当前终端

  • -p:将宿主机端口与容器端口映射,冒号左侧8088是宿主机端口,右侧80是容器端口

  • nginx:镜像名称,例如nginx(不写tag版本,就默认是latest)

为什么要进行端口映射?

        答:由于容器是对外隔离的,用户请求是无法直接访问到容器中的端口的;因此将主机的某个端口xx01与Nginx容器的80端口做一个映射;当用户想要访问nginx时,直接访问http://+主机IP地址:xx01即可映射到容器中的端口http://+主机IP地址:80


步骤二:运行并访问Nginx容器

① 运行一个nginx容器:

docker run --name nginxC01 -d -p 88:80 nginx

② 查看容器列表

docker ps

③ 浏览器访问Nginx(检测是否成功)

  • 如果配置正确,应该能够看到 Nginx 默认的欢迎页面,显示“Welcome to nginx!”

注意:访问前记得关闭防火墙,或者开放指定端口(例如我的是88)

关闭防火墙:

sudo systemctl stop firewalld

查看防火墙状态:

sudo systemctl status firewalld

防火墙开放88端口:

sudo firewall-cmd --zone=public --add-port=88/tcp --permanent

还有:如果你使用的是云服务器(比如 AWS、阿里云等): 确保你已在云服务的安全组(或者防火墙配置)中允许 88 端口的访问。

步骤三:查看并设置日志

查看容器日志的命令:

docker logs 【容器名】
或者
docker logs 【容器名】-f
  • 添加-f参数可以持续查看日志,ctrl+c退出;

总结

docker run命令的常见参数:

  1. --name:指定容器名称

  2. -p:指定端口映射

  3. -d:让容器后台运行

查看容器日志的命令:

  1. docker logs

  2. 添加-f参数可以持续查看日志


案例二:

进入Nginx容器,查看首页的HTML文件内容

步骤一:进入容器,进入我们刚刚创建的nginx容器

命令为:

docker exec -it nginxC01 bash

命令解读:

  • docker exec进入容器内部,执行一个命令;

  • -t:给当前进入的容器创建一个标准输入、输出终端,允许我们与容器交互;

  • nginxC01要进入的容器名称;

  • bash:进入容器后使用的命令格式,bash是指定命令格式为Linux终端交互命令;

可以看到,容器都具有自己的目录结构:

步骤二:进入DockerHub官网,查看nginx容器的目录结构

通常在 How to use this image 这一块,作者都会写一些容器使用方法的信息。

可以看到作者告诉我们,静态HTML目录为: /usr/share/nginx/html

① 进入该目录

② 使用cat命令查看index.html的信息:

④ 使用exit退出容器

exit

⑤ 停止容器

docker stop nginxC01

容器常用命令总结:

1.查看容器状态:
  • 查看当前正在运行的容器:

    docker ps
  • 查看所有容器(包括已停止的容器):

    docker ps -a
2.删除容器:
  • 删除已停止的容器:

    docker rm <容器ID或容器名>
  • 删除运行中的容器(需要添加 -f 参数强制删除):

    docker rm -f <容器ID或容器名>
3.进入容器:
  • 进入容器并执行命令:

    docker exec -it <容器名或容器ID> <命令>

    例如,进入容器并打开交互式 Shell:

    docker exec -it <容器名或容器ID> /bin/bash
注意:
  • docker exec 进入容器后,可以执行命令,例如查看容器内的文件;

  • 但不推荐在容器内直接修改文件。

  • 推荐使用 Dockerfile 和构建镜像来管理容器的配置和文件。

相关文章:

Docker使用指南(二)——容器相关操作详解(实战案例教学,创建/使用/停止/删除)

目录 1.容器操作相关命令​编辑 案例一&#xff1a; 案例二&#xff1a; 容器常用命令总结&#xff1a; 1.查看容器状态&#xff1a; 2.删除容器&#xff1a; 3.进入容器&#xff1a; 二、Docker基本操作——容器篇 1.容器操作相关命令 下面我们用两个案例来具体实操一…...

从通讯工具到 AI 助理,AI手机如何发展?

随着AI进军各行各业&#xff0c;全面AI化时代已经到来。手机&#xff0c;作为现代人类的“数字器官”之一&#xff0c;更是首当其冲地融入了这一变革浪潮之中。 2024年年初&#xff0c;OPPO联合IDC发布了《AI手机白皮书》&#xff0c;公布OPPO已迈向AI手机这一全新阶段。到如今…...

小程序-基础加强

前言 这一节把基础加强讲完 1. 导入需要用到的小程序项目 2. 初步安装和使用vant组件库 这里还可以扫描二维码 其中步骤四没什么用 右键选择最后一个 在开始之前&#xff0c;我们的项目根目录得有package.json 没有的话&#xff0c;我们就初始化一个 但是我们没有npm这个…...

【CSS】谈谈你对BFC的理解

理解 CSS 中的 BFC&#xff08;块格式化上下文&#xff09; 在 CSS 中&#xff0c;BFC&#xff08;Block Formatting Context&#xff09; 是一个非常重要的概念&#xff0c;它决定了元素如何对其子元素进行定位&#xff0c;以及与其他元素的关系。理解 BFC 对于解决常见的布局…...

kubernetes-部署性能监控平台

在当今快速发展的云计算时代&#xff0c;Kubernetes 已成为容器编排的事实标准。随着越来越多的应用迁移到 Kubernetes 平台上&#xff0c;如何有效地监控集群的健康状态、资源使用情况以及应用性能变得尤为重要。一个完善的监控系统可以帮助我们及时发现问题、优化资源配置&am…...

【Uniapp-Vue3】iconfont图标库的使用

先在iconfont图标库中将需要的图标加入购物车 点击右侧购物车的图标 点击添加至项目&#xff0c;可以选中项目进行加入&#xff0c;也可以点击文件加号创建一个新的项目并添加 加入以后会来到如下界面&#xff0c;点击下载至本地 双击打开下载的.zip文件 将.css和.ttf文件进…...

Linux find 命令 | grep 命令 | 查找 / 列出文件或目录路径 | 示例

注&#xff1a;本文为 “Linux find 命令 | grep 命令使用” 相关文章合辑。 未整理去重。 如何在 Linux 中查找文件 作者&#xff1a; Lewis Cowles 译者&#xff1a; LCTT geekpi | 2018-04-28 07:09 使用简单的命令在 Linux 下基于类型、内容等快速查找文件。 如果你是 W…...

Day 28 卡玛笔记

这是基于代码随想录的每日打卡 77. 组合 给定两个整数 n 和 k&#xff0c;返回范围 [1, n] 中所有可能的 k 个数的组合。 你可以按 任何顺序 返回答案。 示例 1&#xff1a; 输入&#xff1a;n 4, k 2 输出&#xff1a; [[2,4],[3,4],[2,3],[1,2],[1,3],[1,4], ]示例 2…...

1.PPT:天河二号介绍【12】

目录 NO1 NO2.3.4.5 NO6.7.8.9​ NO1 PPT&#xff1a;新建一个空白演示文档→保存到考生文件夹下&#xff1a;天河二号超级计算机.pptx幻灯片必须选择一种设计主题&#xff1a;设计→主题&#xff08;随便选中一种&#xff09;幻灯片的版式&#xff1a;开始→版式&#x…...

AI大模型开发原理篇-4:神经概率语言模型NPLM

神经概率语言模型&#xff08;NPLM&#xff09;概述 神经概率语言模型&#xff08;Neural Probabilistic Language Model, NPLM&#xff09; 是一种基于神经网络的语言建模方法&#xff0c;它将传统的语言模型和神经网络结合在一起&#xff0c;能够更好地捕捉语言中的复杂规律…...

物联网领域的MQTT协议,优势和应用场景

MQTT&#xff08;Message Queuing Telemetry Transport&#xff09;作为轻量级发布/订阅协议&#xff0c;凭借其低带宽消耗、低功耗与高扩展性&#xff0c;已成为物联网通信的事实标准。其核心优势包括&#xff1a;基于TCP/IP的异步通信机制、支持QoS&#xff08;服务质量&…...

电控---中断

中断 1.处理器系统在执行代码的时候&#xff0c;会从存储器依次取出指令和数据&#xff0c;这种能力需要在处理器里保存一个存储器地址&#xff0c;就是所谓的程序计数器&#xff08;Program Counter,PC&#xff09;&#xff0c;也叫程序指针 2.当外部中断&#xff08;Extern …...

动态规划DP 背包问题 多重背包问题(朴素版+二进制优化+单调队列)

概览检索 动态规划DP 概览&#xff08;点击链接跳转&#xff09; 动态规划DP 背包问题 概览&#xff08;点击链接跳转&#xff09; 多重背包问题1 原题链接 AcWiing 4. 多重背包问题1 题目描述 有 N种物品和一个容量是 V的背包。 第 i 种物品最多有 si件&#xff0c;每件体…...

调试与错误修复:Cursor 如何成为你的编程助手

引言 调试是软件开发过程中最耗时且最具挑战性的环节之一。据统计&#xff0c;开发者平均将 50% 以上的编码时间 用于定位和修复错误。传统调试工具&#xff08;如断点调试器、日志分析&#xff09;虽能解决问题&#xff0c;但往往需要开发者手动追溯代码执行流程&#xff0c;…...

PHP 常用函数2025.02

PHP implode() 函数 语法 implode(separator,array) 参数描述separator可选。规定数组元素之间放置的内容。默认是 ""&#xff08;空字符串&#xff09;。array必需。要组合为字符串的数组。 技术细节 返回值&#xff1a;返回一个由数组元素组合成的字符串。PHP 版…...

浏览器查询所有的存储信息,以及清除的语法

要在浏览器的控制台中查看所有的存储&#xff08;例如 localStorage、sessionStorage 和 cookies&#xff09;&#xff0c;你可以使用浏览器开发者工具的 "Application" 标签页。以下是操作步骤&#xff1a; 1. 打开开发者工具 在 Chrome 或 Edge 浏览器中&#xf…...

Paimon写入性能

写入性能 Paimon的写入性能与检查点密切相关&#xff0c;因此需要更大的写入吞吐量&#xff1a; 增加检查点间隔&#xff0c;或者仅使用批处理模式。增加写入缓冲区大小。启用写缓冲区溢出。如果您使用固定存储桶模式&#xff0c;请重新调整存储桶数量。 1 并行度 建议sink…...

Golang 并发机制-5:详解syn包同步原语

并发性是现代软件开发的一个基本方面&#xff0c;Go&#xff08;也称为Golang&#xff09;为并发编程提供了一组健壮的工具。Go语言中用于管理并发性的重要包之一是“sync”包。在本文中&#xff0c;我们将概述“sync”包&#xff0c;并深入研究其最重要的同步原语之一&#xf…...

排序算法与查找算法

1.十大经典排序算法 我们希望数据以一种有序的形式组织起来&#xff0c;无序的数据我们要尽量将其变得有序 一般说来有10种比较经典的排序算法 简单记忆为Miss D----D小姐 时间复杂度 &#xff1a;红色<绿色<蓝色 空间复杂度&#xff1a;圆越大越占空间 稳定性&…...

如何构建ObjC语言编译环境?构建无比简洁的clang编译ObjC环境?Windows搭建Swift语言编译环境?

如何构建ObjC语言编译环境? 除了在线ObjC编译器&#xff0c;本地环境Windows/Mac/Linux均可以搭建ObjC编译环境。 Mac自然不用多说&#xff0c;ObjC是亲儿子。(WSL Ubuntu 22.04) Ubuntu可以安装gobjc/gnustep和gnustep-devel构建编译环境。 sudo apt-get install gobjc gnus…...

数据结构课程设计(三)构建决策树

3 决策树 3.1 需求规格说明 【问题描述】 ID3算法是一种贪心算法&#xff0c;用来构造决策树。ID3算法起源于概念学习系统&#xff08;CLS&#xff09;&#xff0c;以信息熵的下降速度为选取测试属性的标准&#xff0c;即在每个节点选取还尚未被用来划分的具有最高信息增益的…...

深度剖析八大排序算法

欢迎并且感谢大家指出我的问题&#xff0c;由于本人水平有限&#xff0c;有些内容写的不是很全面&#xff0c;只是把比较实用的东西给写下来&#xff0c;如果有写的不对的地方&#xff0c;还希望各路大牛多多指教&#xff01;谢谢大家&#xff01;&#x1f970; 在计算机科学领…...

python-leetcode-二叉树的层序遍历

102. 二叉树的层序遍历 - 力扣&#xff08;LeetCode&#xff09; # Definition for a binary tree node. # class TreeNode: # def __init__(self, val0, leftNone, rightNone): # self.val val # self.left left # self.right right from coll…...

毕业设计:基于深度学习的高压线周边障碍物自动识别与监测系统

目录 前言 课题背景和意义 实现技术思路 一、算法理论基础 1.1 卷积神经网络 1.2 目标检测算法 1.3 注意力机制 二、 数据集 2.1 数据采集 2.2 数据标注 三、实验及结果分析 3.1 实验环境搭建 3.2 模型训练 3.2 结果分析 最后 前言 &#x1f4c5;大四是整个大学…...

顺序表(ArrayList)

1、简介 顺序表是用一段物理地址连续 的存储单元依次存储数据元素的线性结构&#xff0c;一般情况下 采用数组存储 。在 数组 上完成数据的增删查改。&#xff08; 顺序表的底层结构是一个数组 &#xff09; 2、顺序表的实现 下面是顺序表的一些基本成员和方法&#xff0c;能够…...

【Hadoop】Hadoop的HDFS

这里写目录标题 HDFS概述HDFS产出背景及定义HDFS产生背景HDFS定义 HDFS优缺点HDFS优点HDFS缺点 HDFS组成架构HDFS文件块大小 HDFS的Shell操作常用命令实操准备工作上传下载HDFS直接操作 HDFS的API操作客户端环境准备HDFS的API案例实操HDFS文件上传HDFS文件下载HDFS文件更名和移…...

C++ Primer 迭代器

欢迎阅读我的 【CPrimer】专栏 专栏简介&#xff1a;本专栏主要面向C初学者&#xff0c;解释C的一些基本概念和基础语言特性&#xff0c;涉及C标准库的用法&#xff0c;面向对象特性&#xff0c;泛型特性高级用法。通过使用标准库中定义的抽象设施&#xff0c;使你更加适应高级…...

使用 Postman 进行 API 测试:从入门到精通

使用 Postman 进行 API 测试&#xff1a;从入门到精通 使用 Postman 进行 API 测试&#xff1a;从入门到精通一、什么是 API 测试&#xff1f;二、Postman 简介三、环境搭建四、API 测试流程1. 收集 API 文档2. 发送基本请求示例&#xff1a;发送 GET 请求示例代码&#xff08;…...

Leetcode面试高频题分类刷题总结

https://zhuanlan.zhihu.com/p/349940945 以下8个门类是面试中最常考的算法与数据结构知识点。 排序类&#xff08;Sort&#xff09;&#xff1a; 基础知识&#xff1a;快速排序&#xff08;Quick Sort&#xff09;&#xff0c; 归并排序&#xff08;Merge Sort&#xff09;的…...

8.原型模式(Prototype)

动机 在软件系统中&#xff0c;经常面临着某些结构复杂的对象的创建工作&#xff1b;由于需求的变化&#xff0c;这些对象经常面临着剧烈的变化&#xff0c;但是它们却拥有比较稳定一致的接口。 之前的工厂方法和抽象工厂将抽象基类和具体的实现分开。原型模式也差不多&#…...