docker容器常用命令【运行(开机自启)、停止、启动、暂停、恢复运行、日志、容器状态、 进入容器执行命令】

2023-05-16

1. 容器相关命令介绍

容器操作的命令如图:
在这里插入图片描述

1.1. 容器保护的三个状态:

  1. 运行:进程正常运行
  2. 暂停:进程暂停,CPU不再运行,但不释放内存
  3. 停止:进程终止,回收进程占用的内存、CPU等资源

2. docker常用容器操作命令

2.1. 创建并运行一个容器

以创建并运行一个Nginx容器为例:

2.1.1 拉取镜像至本地

如已有镜像,则跳过该步骤;
这里拉取得是Nginx最新版本即latest,具体步骤不细谈了,如不清楚如何操作,可跳转至拉取命令查看详细步骤。

2.1.2 创建并运行一个容器

DockerHub官网中下拉找到How to use this image章节,这里可以看到官网给出了诸多启动命令示例
在这里插入图片描述
这里我们选取框中的官网命令示例来进行演示:
docker run --name some-nginx -d -p 8080:80 some-content-nginx

# nginx镜像启动命令
docker run --name mn -d -p 80:80 nginx:latest

在这里插入图片描述
命令执行后,输出容器ID(唯一,红色框中部分)

命令解读:
docker run :创建并运行一个容器
–name : 给容器命名。(蓝色框中部分)
-d:后台运行容器
-p :将宿主机端口与容器端口映射,冒号左侧是宿主机端口,右侧是容器端口。(黄色框中部分)
nginx:latest:镜像名称:tag。(绿色框中部分)

-p 参数,是将容器端口映射到宿主机端口。
默认情况下,容器是隔离环境,我们直接访问宿主机的端口,肯定访问不到容器中的nginx.
现在,将容器的80与宿主机的80关联起来,当我们访问宿主机的80端口时,就会被映射到容器的80,这样就能访问到nginx了。

在这里插入图片描述

2.2. 查看容器运行状态

#查看所有运行的容器及状态
docker ps
#查看所有容器及状态
docker ps -a
#查看某个容器的状态。如不加-a则只能看到运行中的容器
docker ps -a | grep mn

2.3. 查看容器运行日志

# 查看容器mn的运行日志
docker logs mn

2.4. 暂停运行中的容器

# 暂停容器(mn)的运行
docker pause mn

在这里插入图片描述

2.5. 恢复运行暂停中的容器

# 恢复暂停容器(mn)的运行
docker unpause mn

在这里插入图片描述

2.6. 停止容器运行

# 停止容器(mn)的运行
docker stop mn

在这里插入图片描述

2.7. 运行停止的容器

# 运行停止的容器(mn)
docker start mn

在这里插入图片描述

2.8. 删除容器

# 删除容器(mn),-f:强制删除正在运行的容器
docker rm -f  mn

2.9.容器设置自动启动:

启动命令中加入 --restart=always

# nginx镜像启动命令(加入开机自启动)
docker run -d --restart=unless-stopped --name=mn  -p 80:80  nginx:latest
# 已经启动的项目,使用update更新
docker update --restart=unless-stopped mn

Flag Description:

  1. –restart=always : 表示容器退出时,docker会总是自动重启这个容器
  2. –restart=on-failure:3 : 表示容器的退出状态码非0(非正常退出),自动重启容器,3是自动重启的次数。超过3此则不重启
  3. –restart=no默认值,容器退出时,docker不自动重启容器
  4. –restart=unless-stopped : 表示容器退出时总是重启,但是不考虑docker守护进程运行时就已经停止的容器

2.10. 进入容器执行命令:

# 进入容器,使用bash命令
docker exec -it mn bash

命令解读:

  1. docker exec :进入容器内部,执行一个命令
  2. -it : 给当前进入的容器创建一个标准输入、输出终端,允许我们与容器交互
  3. mn :要进入的容器的名称
  4. bash:进入容器后执行的命令,bash是一个linux终端交互命令

示例:进入Nginx容器,修改Nginx中HTML文件的内容

步骤如下:

# 进入容器,使用bash命令
docker exec -it mn bash
# 进入html所在目录
cd /usr/share/nginx/html
# 修改index.html的内容(容器内没有vi命令,无法直接修改,所以使用下面的命令来修改)
sed -i -e 's#Welcome to nginx# my nginx!!!#g' -e 's#<head>#<head><meta charset="utf-8">#g' index.html

修改前:
在这里插入图片描述
修改后:
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

docker容器常用命令【运行(开机自启)、停止、启动、暂停、恢复运行、日志、容器状态、 进入容器执行命令】 的相关文章

  • IMX6ULL学习笔记(17)——工程管理

    一 简介 之前我们把所有源码文件放在一个文件夹下 这样做存在两个主要问题 xff0c 第一 xff0c 代码存放混乱不易阅读 第二 xff0c 程序可移植性差 如果工程源文件达到几十 甚至数百个的时候 xff0c 这样一股脑全部放到根目录下
  • [通俗易懂]无线通信读书笔记05(统计多径信道模型)

    通俗易懂 无线通信读书笔记05 xff08 统计多径信道模型 xff09 基本概念通用的时变信道的冲激响应模型窄带衰落模型 本文讨论一类能够描述信道中多径相互叠加产生干涉情形的衰落模型 xff0c 虽然在先前介绍的射线跟踪模型中 xff08
  • IMX6ULL学习笔记(18)——GPIO中断

    一 中断简介 相比 STM32 的 NVIC xff0c IMX6ULL 的中断控制系统更复杂 xff0c 它的中断管理器使用的是 GIC V2 xff0c GIC V2 的实现方式与我们熟知的 NVIC 差别较大 1 1 GIC GIC
  • 解决方法:编译IMX6ULL裸机中断程序提示错误selected processor does not support `cpsid i‘ in ARM mode

    一 问题 编译IMX6ULL野火裸机中断程序出现错误 xff1a arm span class token operator span none span class token operator span eabi span class
  • IMX6ULL学习笔记(19)——时钟系统

    一 时钟系统简介 I MX6U 的系统主频为 528MHz xff0c 有些型号可以跑到 696MHz xff0c 但是默认情况下内部 boot rom 会将 I MX6U 的主频设置为 396MHz 我们在使用 I MX6U 的时候肯定是
  • IMX6ULL学习笔记(20)——UART串口使用

    一 UART简介 i MX6U 芯片具有多达 8 个 UART 外设用于串口通讯 xff0c UART 是在 USART 基础上裁剪掉了同步通信功能 xff0c 只支持异步通信 简单区分同步和异步就是看通信时需不需要对外提供时钟输出 xff
  • 解决方法:编译IMX6ULL裸机串口程序提示错误arm-none-eabi-ld: cannot find -lgcc: 没有那个文件或目录

    一 问题 编译IMX6ULL野火裸机串口程序出现错误 xff1a make span class token punctuation span span class token number 1 span span class token
  • IMX6ULL学习笔记(21)——MMDC接口使用(DDR3测试)

    一 MMDC简介 MMDC 接口与 STM32 的 FSMC 接口类似 xff0c 只不过 MMDC 接口专用于外接 DDR xff0c 并且 MMDC 外部引脚不复用 MMDC 是一个多模的 DDR 控制器 xff0c 可以连接 16 位
  • IMX6ULL学习笔记(22)——eLCDIF接口使用(TFT-LCD屏显示)

    一 TFT LCD简介 TFT LCD xff08 Thin Film Transistor Liquid Crystal Display xff09 即薄膜晶体管液晶显示器 TFT LCD 与无源 TN LCD STN LCD 的简单矩阵
  • STM32 ROS控制器底层代码讲解

    本文主要对控制器底层代码的整天架构进行讲解 控制器由两部分组成一部分是BootLoader 另一部分是APP xff1b BootLoader主要用于固件升级 xff0c APP则作为应用程序 BootLoader的地址为 0x800000
  • STM32 使用microros与ROS2通信

    本文主要介绍如何在STM32中使用microros与ROS2进行通信 xff0c 在ROS1中标准的库是rosserial 在ROS2中则是microros 目前网上的资料也有一部分了 xff0c 但是都没有提供完整可验证的demo xff
  • 用ROS自带的gazebo仿真器搭建自己的环境

    近期需要搭建一个室内仿真环境 xff0c 用于实验调试 xff0c 所以想把相关技巧记录下来 xff0c 如有错误 xff0c 还请批评指正 xff0c 谢谢 参考网页 xff1a 使用gazebo中的building editor创建一个
  • docker如何删除容器里的文件

    问题起因 为什么会有这个问题呢 xff1f 起因是要从一个es搜索引擎从另一个es搜索引擎中拷贝数据 图方便没用软件导致重启es的时候拷贝的数据 xff0c 引发了es的启动异常 解决方案 docker inspect docker ins
  • 从程序中学习EKF-SLAM(一)

    在一次课程的结课作业上 xff0c 作业要求复写一个EKF SLAM系统 xff0c 我从中学到了好多知识 作为一个典型轻量级slam系统 xff0c 这个小项目应该特别适合于slam系统入门 xff0c 可以了解到经典卡尔曼滤波器在sla
  • numpy和tensorflow的一些用法与联系

    tensorflow和numpy值的差别 在numpy中生成的np array可以直接在 debug中看到产生的具体数字 xff1b 而在tensorflow中却只是一个tensor类型 xff0c 需要调用tf Session run X
  • ubuntu18.04 安装librealsense并验证

    安装环境 OS Ubuntu 18 04 bionic Kernel x86 64 Linux 4 15 0 20 generic 安装Realsense SDK 参考https github com IntelRealSense libr
  • YOLOV3只显示一类检测结果,并输出位置信息

    YOLOV3批量检测图片 xff0c 只显示一类检测结果 xff0c 并输出位置信息保存到txt 第一步 xff1a 首先修改YOLOV3中src imge c中的void draw detections函数 这里的修改实现了保存检测类别的
  • 搭建PX4开发环境

    搭建PX4开发环境 官方网站PX4 IO xff0c 我使用的是ubuntu20 04 一 官方环境搭建 1 下载PX4固件 span class token function git span clone https github com
  • PX4二次开发——程序运行过程

    PX4二次开发 程序运行过程 一 写在前面 px4固件程序与最开始我们所学习的对单片机外设开发不同 xff0c 是因为飞行器控制系统是一个复杂的系统 xff0c 要求实时性好 xff0c 完成复杂的控制任务 xff0c 简简单单的按照之前所
  • PX4二次开发——编译与启动脚本的修改

    PX4二次开发 编译和启动脚本的修改 一 在修改之前我们先了解一下目录结构 1 1 总目录结构 上图 xff0c 是源码目录 Src xff1a 目录是源码目录存放所有的源码 xff0c 源码的查看都应该在这里 Mavlink xff1a

随机推荐

  • PX4二次开发——uorb订阅

    PX4二次开发 uorb订阅 一 写在前面 我们写了一个一个功能的模块 xff0c 这些模块并不是独立的 模块之间是有数据传递的 xff0c 这样才能组合到一起实现飞行控制的目的 那么解决模块之间的数据传递的方式就是通过uorb订阅的方式
  • PX4二次开发——PX4程序架构

    PX4程序架构 一 从RCS启动脚本可以看出哪些东西 启动脚本是一个神奇的东西 xff0c 它能够识别出你对应的飞机类型 xff0c 加载对应的混控器 xff0c 选择对应的姿态 位置估计程序以及控制程序 xff0c 初始化你需要的驱动程序
  • ROS

    ROS 1 ROS测试 启动ros master 打开一个终端roscore 启动小海龟仿真器 新打开一个终端rosrun turtlesim turtlesim node 启动海龟控制节点 新打开一个终端rosrun turtlesim
  • c++之vector 及 二维容器vector<vector<int>>初始化方法 及 三维数组初始化

    C 43 43 二维容器vector lt vector gt 初始化方法解析 遇到的问题 xff1a 在解决 求最大字串 问题时想到了用二位数组vector lt vector lt int gt gt table xff0c 但是不知道
  • react 中 setState( ) 的两种写法

    react 想要更新视图只能用 setState 方法 关于 setState 这里有三件事情需要知道 1 不要直接更新状态 xff0c 而是使用 setState 2 状态更新可能是异步的 React 可以将多个setState 调用合并
  • 在32位机器上实现64位数的除法

    概述 在32位机器上不能直接进行64位数据的除法 xff0c 比如a或b是64位的数据的时候 xff0c 要计算a b xff0c 不能直接data 61 a b 这样的计算 xff0c 编译器会报错 xff0c 缺少相关的指令 这就需要我
  • 基于Linux微计算机BBB的飞控开发之IMU数据获取与预处理

    基于Linux微计算机BBB的飞控开发之IMU数据获取与预处理 1 介绍2 Linux下调用I2C2 1 Shell下的调用方法2 2 使用C语言访问i2c设备 3 配置IMU4 读取IMU 1 介绍 最近在做Linux平台的飞控开发 xf
  • LINUX锁之读写锁(C++)

    读写信号量 rw semaphore 又叫读写锁 允许多个读者同时持有该信号量 xff1b 当有一个写者持有该信号量时 xff0c 其他读者跟写者不可持有该信号量 xff1b 当写者写完后 xff0c 可以降级为读者 读写信号量使用于读多写
  • px4中的mavlink协议

    原文地址 xff1a http blog csdn net oqqENvY12 article details 61615609 PX4 对Mavlink 协议提供了良好的原生支持 该协议既可以用于地面站 Ground ControlSta
  • px4姿态控制

    一 开篇 姿态控制篇终于来了 来了 来了 心情爽不爽 xff1f 愉悦不愉悦 xff1f 开心不开心 xff1f 喜欢的话就请我吃顿饭吧 xff0c 哈哈 其实这篇blog一周前就应该写的 xff0c 可惜被上一篇blog霸占了 但是也不算
  • APM飞行模式内部结构——以loiter为例

    飞行模式的架构我已经在上一篇博文中提到了 xff0c 本文将lotiter模式为例 xff0c 详细讲解一下lotier模式的内部控制链 lotier模式即为悬停模式 xff0c 也是GPS定点模式 在起飞前确保GPS是打开的 飞手控制的是
  • js中冒泡排序函数

    冒泡排序函数 function sort arr var len 61 arr length for var i 61 0 i lt len i 43 43 for var j 61 0 j lt len 1 i j 43 43 if ar
  • realsense install USB3.0

    sudo apt get update amp amp sudo apt get upgrade amp amp sudo apt get dist upgrade Navigate to librealsense root directo
  • 远程桌面teamViewer 和 远程控制MobaXterm软件

    1 teamViewer 官网下载 xff1a termViewer 注意 xff1a 安装teamViewer要选择个人非商业用途 xff0c 要不然安装不了 teamViewer有windows版本和linux版本 2 向日葵 Sunl
  • 电梯模拟程序

    Qt5编写的电梯控制模拟程序 附源码 图源代码链接地址 xff1a 系统架构逻辑实现elevator helevaotr cpp未完待续 用c 43 43 和qt5编写的单电梯模拟程序 简介 xff1a 这是一个在Qt5中构建的小型电梯模拟
  • Http_parser报文解析

    http协议 1 超文本传输协议 2 网站等大部分都使用的是http协议 3 客户端发出http协议请求数据包 服务器返回http协议响应数据包 请求 响应格式 1 http请求 span class hljs tag lt span cl
  • Android 通过Otg/USB 进行串口通信(连接Arduino等开发板为例)

    本人手头的板子是Esp32 xff0c 因为工作需要要把板子与手机连线 xff0c 通过手机Otg功能进行串口通信 xff0c 开发了一个简单的串口通信助手 xff0c 现在记录下 xff1a driver library配置 这里为了方便
  • 简单获取cpu使用率,以及后台运行的问题

    做了一个运维平台 xff0c 有一个功能定时执行一个脚本 xff0c 获取cpu使用率和内存使用情况到监控平台 获取cpu使用率使用的是top中的信息 直接运行没有问题 通过nohup xxx sh amp 之后获取不到cpu 信息 代码如
  • Ubuntu卸载python(慎重)

    Ubuntu卸载python xff08 慎重 xff09 看到这篇博客你还有机会收手 Ubuntu系统下不要轻易卸载系统自带的python xff08 2 7 3 5 xff09 xff0c 因为Ubuntu依赖python环境 惨痛经历
  • docker容器常用命令【运行(开机自启)、停止、启动、暂停、恢复运行、日志、容器状态、 进入容器执行命令】

    1 容器相关命令介绍 容器操作的命令如图 xff1a 1 1 容器保护的三个状态 xff1a 运行 xff1a 进程正常运行暂停 xff1a 进程暂停 xff0c CPU不再运行 xff0c 但不释放内存停止 xff1a 进程终止 xff0