Docker常用命令总结~
1、关于镜像
获取镜像
docker pull [image name] [option:tag]AI助手
-
//获取postgres镜像(没有设置镜像版本号则默认获取最新的,使用`latest`标记) -
docker pull postgres -
or -
docker pull postgres:11.14
列出本地镜像
docker imagesAI助手
指定镜像启动一个容器
-
//运行postgres,最后一个postgres代表使用的镜像名称 -
//POSTGRES_PASSWORD=postgres :环境变量POSTGRES_PASSWORD,代表设置密码为postgres -
//postgres有关的其他环境变量可以参考:https://hub.docker.com/_/postgres -
docker run -d --restart always --name postgre- e POSTGRES_PASSWORD=postgres -p 5432:5432 postgres
指定镜像启动并进入容器
-
docker run -it [image name] /bin/bash -
ordocker run -i -t [image name] /bin/bash
伪终端,输入exit退出容器

2、利用Dockerfile创建镜像
创建目录和Dockerfile文件
-
//linux命令:创建目录 -
mkdir [director name] ----mkdir study -
//进入目录 -
cd [director name] ----cd study -
//创建文件 -
touch [file name] ----touch Dockerfile
编写Dockerfile
-
//编辑文件vi [file name] 按 `insert` or `i` 进入编辑状态 -
vi Dockerfile
编写好的Dockerfile文件 , 按esc,输入 :wq 保存并退出

构建镜像
-
//“.” 是 Dockerfile 所在的路径(当前目录),也可以替换为一个具体的 Dockerfile 的路径 -
docker build .

删除本地镜像
*注意:
在删除镜像之前要先用 docker rm 删掉依赖于这个镜像的所有容器
-
docker rmi [image id] -
例如:docker rmi 07e2ee723e2d (07e2ee723e2d 为镜像id)
删除所有镜像
docker rmi -f $(docker images -qa)AI助手
关键字删除镜像
docker rmi $(docker images | grep "关键字")AI助手
删除未被使用的镜像
docker image prune -aAI助手
3、关于容器
启动容器
-
//基于镜像启动容器 -
docker run --name [container name] [image name] -
//启动容器后台运行 -
docker run --name[container name] -d [image name] -
//启动停止的容器 (可以写多个) -
docker start [container name or id] -
//重启容器,(会把运行中的容器停止,再重新启动,可以写多个) -
docker restart [container name or id]
查看启动的容器
docker psAI助手
查看所有容器
docker ps -aAI助手
进入启动后的容器
-
docker exec -it[container name or container id] /bin/bash -
//缺点:当多个窗口同时attach同一个容器时,所有窗口都会同步显示. -
//当某个窗口因命令阻塞时,其他窗口也无法执行操作. -
docker attach [container name or id] -
//exec 和 attach的区别 -
attach 不会在容器中创建进程执行额外的命令,只是附着到容器上. -
exec会在运行的容器上创建进程执行新的命令. -
//nsenter的方式 -
//要下载nsenter 的工具 util-linux -
cd /tmp -
wget https://www.kernel.org/pub/linux/utils/util-linux/v2.24/util-linux-2.24.tar.gz -
tar -xvf util-linux-2.24.tar.gz -
cd util-linux-2.24./configure --without-ncurses make nsenter && sudo cp nsenter /usr/local/bin -
docker inspect -f {{.State.Pid}} [container id] -
nsenter --target [上一个命令的输出内容] --mount --uts --ipc --net --pid

查看容器日志
docker logs -f [container id or name]AI助手
停止容器
docker stop [container name or id]AI助手
删除容器
-
//只能删除未运行的容器 -
docker rm [container name or id] -
例如:docker rm 6516c6b03ccd (6516c6b03ccd 为 容器id) -
或者 docker rm redis (redis 为 容器名称)
强制删除容器(包括运行的)
docker stop $(docker ps -q)AI助手
停用所有运行中的容器
docker rm $(docker ps -aq)AI助手
删除全部已经停止的容器
docker rm $(docker ps -aq)AI助手
停用并删除所有容器
docker stop $(docker ps -q) & docker rm $(docker ps -aq)AI助手
4、其他
查看docker版本
docker versionAI助手
运行docker
docker run -d -p 80:80 docker/getting-startedAI助手
| Options | Explain |
| -d | 在后台运行容器 |
| -p | 设置端口映射 |
| -a | 获取所有/指定更新的用户信息 |
| --restart always | docker 启动时自动启动容器 |
| --name | 设置启动的容器名称 |
| -e | 指定环境变量的值 |
| -m | 指定提交的说明信息 |
| -i | 以交互模式运行容器,让容器的标准输入保持打开,通常与 -t 同时使用 |
| -t | 为容器重新分配一个伪输入终端,并绑定到容器的标准输入上,通常与 -i 同时使用 |
| -f | 通过 SIGKILL 信号强制删除一个运行中的容器 or 实时查看日志 |
| -l | 移除容器间的网络连接,而非容器本身 |
| -v | 删除与容器关联的卷 or 创建一个数据卷并挂载到容器里 |
| :ro | 设置挂载数据卷的权限为只读 |
| -P | 随机映射一个 49000~49900 的端口到内部容器开放的网络端口 |
| -rm | 用-rm 启动的容器 容器终止时会自动删除,不能和-d一起使用 |
| --link | 使容器之间进行安全的交互 |
| -b BRIDGE or –bridge=BRIDGE | 指定容器挂载的网桥 |
| –bip=CIDR | 定制 docker0 的掩码 |
| –icc=true or false | 是否支持容器之间进行通信 |
相关文章:
Docker常用命令总结~
1、关于镜像 获取镜像 docker pull [image name] [option:tag]AI助手//获取postgres镜像(没有设置镜像版本号则默认获取最新的,使用latest标记) docker pull postgres or docker pull postgres:11.14 列出本地镜像 docker imagesAI助手 指定镜像启动一个容…...
浅谈怎样系统的准备前端面试
前言 创业梦碎,回归现实,7 月底毅然裸辞,苦战两个月,拿到了美团和字节跳动的 offer,这算是从业以来第一次真正意义的面试,遇到蛮多问题,比如一开始具体的面试过程我都不懂,基本一直是…...
如何配置防火墙提高服务器安全性
配置防火墙是提高服务器安全性的重要措施之一。防火墙可以控制网络流量,限制未经授权的访问,防止恶意攻击。以下是配置防火墙以提高服务器安全性的详细指南。 一、为什么需要配置防火墙 防火墙的主要作用是: 限制未经授权的访问:…...
java集合-Map HashMap 源码解析
hashMap简介 HashMap是基于哈希表实现的,每一个元素是一个key-value对,无序,不可重复。HashMap是非线程安全的,只是用于单线程环境下,多线程环境下可以采用concurrent并发包下的concurrentHashMap。HashMap 实现了Ser…...
案例分享|企查查的数据降本增效之路
分享嘉宾 任何强 企查查科技股份有限公司 大数据架构负责人 关于企查查 “企查查”是企查查科技股份有限公司旗下的一款企业信用查询工具。2023年5月20日,企查查正式发布全球首款商查大模型——“知彼阿尔法”,该模型基于企查查覆盖的全球企业信用数据进…...
图书馆管理系统(四)基于jquery、ajax--完结篇
任务3.6 后端代码编写 任务描述 这个部分主要想实现图书馆管理系统的后端,使用 Express 框架来处理 HTTP 请求,并将书籍数据存储在一个文本文件 books.txt 中。 任务实施 3.6.1 引入模块及创建 Express 应用 const express require(express); cons…...
什么是Modbus协议网关?
在工业自动化领域,设备间的通信与数据交换是实现高效、智能控制的关键。Modbus协议作为一种广泛应用的通信协议,自1971年由Modicon公司首次推出以来,便以其标准、开放、支持多种电气接口等特点,在工业控制系统中占据了重要地位。然…...
Docker 容器中启用 SSH 服务
在 Docker 容器中运行 SSH 服务需要一些调整,因为 Docker 容器通常使用 init 系统而不是完整的 systemd。以下是配置 SSH 服务在 Docker Ubuntu 容器中运行的步骤: 1. 安装 SSH 服务 如果还未安装 OpenSSH,请先安装: apt update…...
Linux系统—利用systemd管控系统以及服务详解(十四)
本文为Ubuntu Linux操作系统- 第十四弹~~ 新的一周开始了,时间过得真快,这星期就要冬至啦!! 今天继续Linux系统高级管理板块,主要讲述使用systemd管控系统和服务~ 上期回顾:“Linux系统—进程管理详解” 更…...
人工智能 AI 大模型研究设计与实践应用技术毕业论文
标题:人工智能 AI 大模型研究设计与实践应用技术 内容:1.摘要 人工智能 AI 大模型是当前人工智能领域的研究热点之一,它具有高度的通用性、灵活性和智能性,可以应用于多种领域,如自然语言处理、计算机视觉、语音识别等。本文旨在探讨人工智能…...
已有 containerd 的情况下部署二进制 docker 共存
文章目录 [toc]学习目的开始学习dockerd启动 containerd准备配置文件启动 containerd 启动 docker准备配置文件启动 docker 环境验证停止 docker 和 containerd 学习目的 使用容器的方式做一些部署的交付,相对方便很多,不需要担心别人的环境缺少需要的依…...
VSCode 搭建Python编程环境 2024新版图文安装教程(Python环境搭建+VSCode安装+运行测试+背景图设置)
名人说:一点浩然气,千里快哉风。—— 苏轼《水调歌头》 创作者:Code_流苏(CSDN) 目录 一、Python环境安装二、VScode下载及安装三、VSCode配置Python环境四、运行测试五、背景图设置 很高兴你打开了这篇博客,更多详细的安装教程&…...
vue+springboot+cas配置及cookie传递问题
cookie的注意事项 前边的文章已经介绍过cookie的基本信息,这里再次说明一点:cookie是无法进行跨域传递的,很多时候cookie无法设置和传递都是因为跨域问题,ip/端口不一致。 主要就是:被设置cookie和要传递cookie的地址…...
0009.基于springboot+layui的ERP企业进销存管理系统
一、系统说明 基于springbootlayui的ERP企业进销存管理系统,系统功能齐全, 代码简洁易懂,适合小白学编程,课程设计,毕业设计。 二、系统架构 前端:html| layui 后端:springboot | mybatis| thymeleaf 环境:jdk1.8 |…...
ZYNQ初识2(zynq_7010)基于vivado,从PL端调用PS端的时钟
由于需要进行一些FPGA的简单开发,但板载PL端没有焊接晶振,所以需要从PS端借用时钟到PL端使用。 首先新建项目,根据自己的板载选择芯片,我的板载芯片是zynq_7010。 一路next,在自己的vivado的工作文档新建文件夹并给自…...
Android详解——ConstraintLayout约束布局
目录 一、ConstraintLayout概述 二、ConstraintLayout属性介绍 1. 相对位置 2. 边距 3. 中心和偏移位置 中心位置 偏移位置 4. 圆形位置 5. 可见性 6. 尺寸约束 最小尺寸 WRAP_CONTENT :强制约束 MATCH_CONSTRAINT Min和Max 百分比尺寸 比率 7. 链式布局 创建…...
docker简单命令
docker images 查看镜像文件 docker ps -a 查看容器文件 docker rm 0b2 删除容器文件,id取前三位即可 docker rmi e64 删除镜像文件(先删容器才能删镜像),id取前三位即可 在包含Dockerfile文件的目录…...
【linux】shell(36)-文件操作
1. 文件创建 1.1 使用 touch 命令创建空文件 touch filename创建一个名为 filename 的空文件。如果文件已存在,touch 会更新该文件的时间戳。 示例: touch file1.txt1.2 使用重定向符创建文件 > filename使用 > 符号创建一个空文件。如果文件…...
c语言——数据结构【链表:单向链表】
上篇→快速掌握C语言——数据结构【创建顺序表】多文件编译-CSDN博客 一、链表 二、单向链表 2.1 概念 2.2 单向链表的组成 2.3 单向链表节点的结构体原型 //类型重定义,表示存放的数据类型 typedef int DataType;//定义节点的结构体类型 typedef struct node {union{int l…...
Python 标识符是啥?
Python 的标识符就是我们写代码时用来给变量、函数、类等取名字的东西。 你写的 my_variable 是个标识符, 定义的 add_numbers 函数名也是个标识符, 甚至你写的 Cat 类名,也是标识符。 一句话总结:标识符就是代码里给“东西”起…...
基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销,平衡网络负载,延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...
第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明
AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...
相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...
自然语言处理——循环神经网络
自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元(GRU)长短期记忆神经网络(LSTM)…...
FFmpeg:Windows系统小白安装及其使用
一、安装 1.访问官网 Download FFmpeg 2.点击版本目录 3.选择版本点击安装 注意这里选择的是【release buids】,注意左上角标题 例如我安装在目录 F:\FFmpeg 4.解压 5.添加环境变量 把你解压后的bin目录(即exe所在文件夹)加入系统变量…...
Caliper 配置文件解析:fisco-bcos.json
config.yaml 文件 config.yaml 是 Caliper 的主配置文件,通常包含以下内容: test:name: fisco-bcos-test # 测试名称description: Performance test of FISCO-BCOS # 测试描述workers:type: local # 工作进程类型number: 5 # 工作进程数量monitor:type: - docker- pro…...
Python 实现 Web 静态服务器(HTTP 协议)
目录 一、在本地启动 HTTP 服务器1. Windows 下安装 node.js1)下载安装包2)配置环境变量3)安装镜像4)node.js 的常用命令 2. 安装 http-server 服务3. 使用 http-server 开启服务1)使用 http-server2)详解 …...
零知开源——STM32F103RBT6驱动 ICM20948 九轴传感器及 vofa + 上位机可视化教程
STM32F1 本教程使用零知标准板(STM32F103RBT6)通过I2C驱动ICM20948九轴传感器,实现姿态解算,并通过串口将数据实时发送至VOFA上位机进行3D可视化。代码基于开源库修改优化,适合嵌入式及物联网开发者。在基础驱动上新增…...
SQL Server 触发器调用存储过程实现发送 HTTP 请求
文章目录 需求分析解决第 1 步:前置条件,启用 OLE 自动化方式 1:使用 SQL 实现启用 OLE 自动化方式 2:Sql Server 2005启动OLE自动化方式 3:Sql Server 2008启动OLE自动化第 2 步:创建存储过程第 3 步:创建触发器扩展 - 如何调试?第 1 步:登录 SQL Server 2008第 2 步…...
面试高频问题
文章目录 🚀 消息队列核心技术揭秘:从入门到秒杀面试官1️⃣ Kafka为何能"吞云吐雾"?性能背后的秘密1.1 顺序写入与零拷贝:性能的双引擎1.2 分区并行:数据的"八车道高速公路"1.3 页缓存与批量处理…...
