深入掌握:如何进入Docker容器并运行命令

news2024/9/20 14:14:47

金牌6133CPU
感谢浪浪云支持发布
浪浪云活动链接 :https://langlangy.cn/?i8afa52


文章目录

    • 查看正在运行的容器
    • 使用 `docker exec` 命令进入容器
      • 进入容器的交互式 shell
      • 在容器中运行命令
    • 使用 `docker attach` 命令附加到容器
    • 检查容器日志
    • 退出容器
      • 从 `docker exec` 方式退出
      • 从 `docker attach` 方式退出

当然,以下是更为详细的关于如何进入 Docker 容器并运行命令的指南。通过这个指南,你将了解如何查看运行中的容器、进入容器、在容器中运行命令以及如何退出容器。

查看正在运行的容器

首先,你需要知道有哪些容器正在运行。可以使用以下命令查看:

docker ps

这个命令将输出类似以下的信息:

CONTAINER ID   IMAGE          COMMAND                  CREATED          STATUS          PORTS                   NAMES
e90e34656806   nginx          "nginx -g 'daemon of…"   23 minutes ago   Up 23 minutes   0.0.0.0:80->80/tcp      my_nginx
4dfd7fc9efbc   my_app_image   "/bin/sh -c 'python …"   45 minutes ago   Up 45 minutes                           my_app

在上面的输出中,CONTAINER IDNAMES 是你常用的标识符,例如 e90e34656806my_nginx

使用 docker exec 命令进入容器

docker exec 命令允许你在一个已经运行的容器中执行新的命令。通常,我们希望启动一个交互式 shell 会话。

进入容器的交互式 shell

假设你想进入一个名为 my_nginx 的容器,可以使用以下命令:

docker exec -it my_nginx /bin/bash

参数解释:

  • -i:使得操作保持标准输入开启,即使没有附加任何控制台。
  • -t:为这个操作分配一个伪终端。
  • /bin/bash:这是你将要启动的命令,即 bash shell。

如果你的容器没有 bash 而是 sh(这在一些较小的容器镜像中常见),可以使用以下命令:

docker exec -it my_nginx /bin/sh

在容器中运行命令

如果你只想在容器中执行一次性命令,而不是进入交互式 shell,可以直接在 docker exec 后面加上命令。例如,在 my_nginx 容器中列出 /var 目录的内容:

docker exec my_nginx ls /var

你可以运行任何你需要的命令,例如:

docker exec my_nginx cat /etc/hosts

使用 docker attach 命令附加到容器

docker attach 命令使你能够将你的终端附加到一个已经运行的容器的主进程。但请注意,这与 docker exec 不同,docker attach 不会启动一个新的命令。

假设你想附加到名为 my_app 的容器:

docker attach my_app

使用 docker attach 你将直接进入容器的主进程(通常是容器的入口点命令),就像当初容器启动时一样。

检查容器日志

有时候你可能不需要进入容器内部,但想查看容器的日志,可以使用 docker logs 命令。例如,查看名为 my_app 的容器日志:

docker logs my_app

你还可以使用 -f 选项来实时查看日志输出:

docker logs -f my_app

这会显示容器的实时日志输出,非常适合用于调试长时间运行的服务。

退出容器

docker exec 方式退出

如果你是通过 docker exec 登录到一个交互式 shell 中,可以使用以下方式退出:

  • 输入 exit 命令
  • 或者按 Ctrl + D

docker attach 方式退出

如果你是通过 docker attach 命令附加到容器,你可以使用以下方式分离会话,同时保持容器继续运行:

  • Ctrl + P 然后按 Ctrl + Q

通过这些操作方法,你可以高效地管理和调试 Docker 容器。如果你需要在容器中运行更多复杂的调试工具,可以参考相关工具的文档。希望这篇详细的指南能够帮助你更好地理解和使用 Docker 容器的操作。

感谢浪浪云支持发布
浪浪云活动链接 :https://langlangy.cn/?i8afa52
请添加图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2134560.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

趣味SQL | 从围棋收官到秦楚大战的数据库SQL语言实现

目录 0 前言 1 秦孝公大战商鞅 2 收官类型与城池特征 3 收官顺序与攻城策略 4 秦孝公展示SQL神功 5 写在最后 欲知后事如何,想进一步了解SQL这门艺术语言的,可以订阅我的专栏数字化建设通关指南,且听下回分解。专栏 原价99&#xff0c…

MacBook上怎么查找历史复制记录?

你是否经常遇到这样的情况:做内容或方案时,需要用到素材就去找,找到后回来粘贴,然后再去找,再回来粘贴?这个过程是不是很繁琐? 那么找到的素材要不要保存下来呢?每个都存成文件似乎太麻烦了。但如果不单独保存,过两天想再利用又找不到了,怎么办? 在网上看到的一段好文案、…

解锁头条创作新纪元:文字游侠AI工具助你解放双手 ,一键生成爆文!

如今,自媒体创作早已不再是专业人士的专属领地,而是成为了普通人轻创首选的新途径。然而,对于许多想要通过自媒体创业的朋友来说,创作内容的难度和耗时却成为了不可忽视的障碍。 今天,为大家揭秘一款颠覆性的AI写作神…

【附源码】用Python开发一个音乐下载工具,并打包EXE文件,所有音乐都能搜索下载!

现在听个歌,不是要这就是要那,乱七八糟的,下软件都下不赢。 于是决定加班熬夜来做一个,想怎么听就怎么听,大家自己看到就好,悄悄用,别告诉别人哈~ 好了不闲聊,开整! 首先…

新书速览|循序渐进Vue.js 3.x前端开发实践

《循序渐进Vue.js 3.x前端开发实践》 本书内容 《循序渐进Vue.js 3.x前端开发实践》由一位拥有丰富前端开发经验的架构师撰写,旨在通过详尽的理论知识讲解和丰富的实践练习,帮助初学者深入掌握Vue.js框架,并能够独立开发商业级别的Web应用程…

【题解】CF1993D

目录 翻译思路总代码 翻译 原题链接 思路 容易发现,无论如何操作,最后剩下的数量是一定的,记剩下的数组中中位数的位置为 m m m(从1开始记),注意不能将数组删空。有: 剩余数组的长度 L ( n …

windows@移除资源管理器中的网盘等软件的图标@一键移除方案

文章目录 abstract设置方案移除注册表(不推荐单独使用)设置访问权限GUI设置powershell方案 利用powershell设置相应注册表(一键执行脚本)移除所有用户对指定注册表路径的访问权限移除所有权限但保留管理员👺 abstract 国内的云盘等软件比如百度网盘,夸克网盘,wps等…

轻量级模型汇总解读——涉及MobileNet、ShuffleNet、GhostNet、EfficientNet、NasNet、轻量transformer

前言:最近需要将模型移植到瑞芯微rv1106上运行,相比于rv1126 NPU的2.0T算力,它的算力更小,只支持0.5T的算力,而且rv1106目前只支持int8量化,为了保证模型推理在满足精度要求的情况下,保证时间尽…

基于C++实现(控制台)停车场管理系统

停车场管理系统设计报告 1 需求分析 1.1问题描述 停车场内只有一个可停放 n 辆汽车的狭长通道,且只有一个大门可供汽车进出。 汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放…

Python_两个jpg图片文件名称互换

项目场景 处理Adobe Photoshop导出的两个切片的顺序错误问题 小编在进行图片切片处理的时候,发现用PS导出的切片顺序错误,例如用PS导出的切片分别为test_01.jpg,test_02.jpg,但实际的使用需求是将两个图片的顺序调换&#xff0c…

IC开发——Verilog简明教程

1. 基础概念 1.1. 逻辑值 逻辑0,低电平,对应电路中接地GND。 逻辑1,高电平,对应电路中的电源VCC。 逻辑Z,高阻态,对应电路的悬空。 逻辑X,未知态,数据仿真中可能存在,如…

Delphi Web和Web服务开发目前有哪些选择

Delphi Web和Web服务开发目前有哪些选择 Delphi Web和Web服务开发目前有以下几个选择: Delphi MVC Framework(https://github.com/delphimvcframework/delphimvcframework):这是一个开源的Delphi Web框架,基于MVC&am…

小程序uniapp关闭手势返回操作

需求:进入当前页面后,无法返回其他页面,禁止所有返回操作(手势返回、左上角返回按钮等) 解决: 方法一:wx.enableAlertBeforeUnload wx.enableAlertBeforeUnload 在onLoad里调用: on…

-isystem isystem 实验记录

1,isystem 的理论 2,实验方案 $ tree . ├── inc111 │ └── test.h ├── inc222 │ └── test.h └── src ├── a.out └── hello.c inc111/test.h: #pragma once#define NUM 111 inc222/test.h #pragma once#define N…

2024年9月中国数据库排行榜:openGauss系多点开花,根社区优势明显

在墨天轮发布的9月中国数据库流行度排行榜中,中国数据库产业格局进一步聚集刷新,呈现出3大显著特征: 开源势力力争上游显优势领先潮流;openGauss 开源根社区优势明显;阿里华为两极鼎立云上云下各争先; 开…

2024年第二届《英语世界》杯全国大学生英语听力大赛

下周开考! 一、主办单位 商务印书馆《英语世界》杂志社 二、时间安排 赛事报名时间:即日起-2024年11月15日 正式比赛阶段:第一场:2024年9月22日10:00-22:00 第二场:2024年10月27日10:00-22:00 第三场&#xff1…

安装2024最新版Android Studio 最详细教程(带图展示)

一、安装JDK (1)首先在除C盘以外的盘建立文件夹,分别保存软件位置,JDK位置与SDK位置, 特别注意:所有文件名中不要出现空格,而且每个文件夹都是为空的状态 这里我是在D盘中操作。 &#xff0…

综合型医院适合什么样的数据摆渡方式,才能服务与安全兼顾?

综合型医院,是提供全面医疗服务的综合型医院。综合型医院的服务对象广泛,包括儿童、成人、老年人等各年龄段的人群,以及患有各种疾病的患者。它们通过提供全面的医疗服务,保障人民群众的健康需求,是医疗卫生事业的重要…

IP-adapter masking

https://github.com/huggingface/diffusers/issues/6802https://github.com/huggingface/diffusers/issues/6802

Java后端编程语言进阶篇

第一章 函数式接口 函数式接口是Java 8中引入的一个新特性,只包含一个抽象方法的接口。 函数式接口可以使用Lambda表达式来实现,从而实现函数式编程的特性。 使用 FunctionalInterface标识接口是函数式接口,编译器才会检查接口是否符合函数…