【编程向导】Docker-常用命令
常用命令
管理命令
| 管理命令 | 说明 |
|---|---|
| builder | 管理构建 |
| config | 管理配置 |
| container | 管理容器 |
| context | 管理上下文 |
| engine | 管理引擎 |
| image | 管理镜像 |
| network | 管理网络 |
| node | 管理 Swarm 节点 |
| plugin | 管理插件 |
| secret | 管理 Docker secrets |
| service | 管理服务 |
| stack | 管理 Docker stacks |
| swarm | 管理 Swarm 集群 |
| system | 查看系统信息 |
| trust | 管理 Docker trust |
| volume | 管理卷 |
普通命令
容器生命周期管理
| 命令 | 说明 |
|---|---|
| run | 创建一个新的容器并运行一个命令 |
| start | 启动容器 |
| stop | 停止容器 |
| restart | 重启容器 |
| kill | kill 运行中的容器 |
| rm | 删除容器 |
| pause | 暂停一个或多个容器中的所有进程 |
| unpause | 恢复容器中所有的进程 |
| create | 创建一个新容器 |
| exec | 在正在运行的容器中运行命令 |
容器操作
| 命令 | 说明 |
|---|---|
| ps | 查看容器列表 |
| inspect | 返回 Docker 对象的低级信息 |
| top | 展示一个容器中运行的进程 |
| attach | 进入一个运行的容器 |
| events | 从服务器获取实时事件 |
| logs | 获取一个容器的日志 |
| wait | 阻塞直到容器停止,然后打印退出代码 |
| export | 将容器的文件系统导出为 tar 存档 |
| port | 查看端口映射或容器的特定映射列表 |
| stats | 实时显示容器资源使用情况的统计信息 |
| update | 更新容器配置 |
容器 rootfs 命令
| 命令 | 说明 |
|---|---|
| commit | 从容器变更记录中创建一个镜像 |
| cp | 在容器和宿主机文件系统之间拷贝文件 |
| diff | 检查对容器文件系统上的文件或目录的更改 |
镜像仓库
| 命令 | 说明 |
|---|---|
| login | 登陆 Docker 镜像仓库 |
| logout | 登出 Docker 镜像仓库 |
| pull | 从镜像仓库拉取镜像 |
| push | 将本地的镜像上传到镜像仓库,要先登陆到镜像仓库 |
| search | 从 Docker Hub 搜索镜像 |
本地镜像管理
| 命令 | 说明 |
|---|---|
| images | 查看镜像列表 |
| rmi | 删除镜像 |
| tag | 标记本地镜像,将其归入某一仓库 |
| build | 根据 DockerFile 构建镜像 |
| history | 显示镜像的构建历史记录 |
| save | 将指定镜像保存成 tar 归档文件 |
| load | 从存档或者 STDIN 加载镜像 |
| import | 从归档文件中创建镜像 |
| rename | 重命名容器 |
相关信息
| 命令 | 说明 |
|---|---|
| wait | |
| info | 显示系统范围的信息 |
| version | 显示 Docker 的版本信息 |
宿主机操作
端口和磁盘目录的映射
# 将宿主机的 81 端口映射到容器的 80 端口
# 将宿主机的 /develop/data 卷 映射到容器的 /data 卷
$ docker run -i -t -p 81:80 -v /develop/data:/data centos /bin/bash
-p:映射端口号-v:磁盘目录映射
Docker 更改端口号映射:
运行中的容器无法映射新的端口号,也无法更改端口号映射,但可以通过两种方法解决。
- iptable 转发端口
# 查看容器 IP
$ docker insepct 36afde543eb5 | grep IPAddress
> "IPAddress": "172.17.0.2"# 将主机的 8081 端口映射到宿主机的 8080 端口
$ iptables -t nat -A DOCKER -p tcp --dport 8081 -j DNAT --to-destination 172.17.0.2:8080
- 先提交容器为镜像,再运行这个容器,同时指定新的端口映射
# 提交容器为镜像
$ docker commit 9995ffa15f46 mycentos:0.1# 停止旧的容器
$ docker stop 9995ffa15f46# 重新从旧的镜像启动容器
$ docker run -i -t -p 8081:8080 mycentos:0.1
宿主机关于 Docker 的操作
# 开启 docker
service docker start# 重启
service docker restart# 暂停
service docker stop
Docker Hub
创建和使用私有仓库
#
docker run -eSEARCH_BACKEND=sqlalchemy-eSQLALCHEMY_INDEX_DATABASE=sqlite:tmp/docker-registry.db-d -name registry -p 5000:5000 registry
原版指令指引
按首字母大小写排列
attachAttach local standard input, output, and error streams to a running containerbuildBuild an image from a DockerfilecommitCreate a new image from a container’s changescpCopy files/folders between a container and the local filesystemcreateCreate a new containerdiffInspect changes to files or directories on a container’s filesystemeventsGet real time events from the serverexecRun a command in a running containerexportExport a container’s filesystem as a tar archivehistoryShow the history of an imageimagesList imagesimportImport the contents from a tarball to create a filesystem imageinfoDisplay system-wide informationinspectReturn low-level information on Docker objectskillKill one or more running containersloadLoad an image from a tar archive or STDINloginLog in to a Docker registrylogoutLog out from a Docker registrylogsFetch the logs of a containerpausePause all processes within one or more containersportList port mappings or a specific mapping for the containerpsList containerspullPull an image or a repository from a registrypushPush an image or a repository to a registryrenameRename a containerrestartRestart one or more containersrmRemove one or more containersrmiRemove one or more imagesrunRun a command in a new containersaveSave one or more images to a tar archive (streamed to STDOUT by default)searchSearch the Docker Hub for imagesstartStart one or more stopped containersstatsDisplay a live stream of container(s) resource usage statisticsstopStop one or more running containerstagCreate a tag TARGET_IMAGE that refers to SOURCE_IMAGEtopDisplay the running processes of a containerunpauseUnpause all processes within one or more containersupdateUpdate configuration of one or more containersversionShow the Docker version informationwaitBlock until one or more containers stop, then print their exit codes
相关文章:
【编程向导】Docker-常用命令
常用命令 管理命令 管理命令说明builder管理构建config管理配置container管理容器context管理上下文engine管理引擎image管理镜像network管理网络node管理 Swarm 节点plugin管理插件secret管理 Docker secretsservice管理服务stack管理 Docker stacksswarm管理 Swarm 集群sys…...
LeetCode题练习与总结:不同的二叉搜索树Ⅱ--95
一、题目描述 给你一个整数 n ,请你生成并返回所有由 n 个节点组成且节点值从 1 到 n 互不相同的不同 二叉搜索树 。可以按 任意顺序 返回答案。 示例 1: 输入:n 3 输出:[[1,null,2,null,3],[1,null,3,2],[2,1,3],[3,1,null,nul…...
idea SpringBoot + Gradle 环境配置到项目打包
一、前言 Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,也增加了基于Kotlin语言的kotlin-based DSL,抛弃了基于XML的各种繁琐配置。 面向Java应用为主。当前其支持…...
深入理解tengine的sysguard模块
目录 1. 引言2. 开启sysguard模块2.1 编译2.2 配置3. 源码分析3.1 配置参数分析3.2 模块的初始化3.3 ngx_http_sysguard_handler函数3.4 各项负载指标的获取3.4.1 load系统负载的获取3.4.2 cpu使用率的获取3.4.3 内存使用情况的获取3.3.5 请求平均响应时间的获取1. 引言 Tengin…...
探索多模态LLM作为驾驶的世界模型
24年5月MIT的论文“Probing Multimodal LLMs as World Models for Driving”。 主要对多模态大语言模型(MLLM)在自动驾驶领域的应用进行了审视,并挑战/验证了一些常见的假设,重点关注它们通过图像/帧序列推理和解释在闭环控制环境…...
掌握Vim:Linux系统维护的瑞士军刀 - 常用命令深度解析
在Linux的世界里,Vim编辑器犹如一位沉默的剑客,它的命令就是那锋利的剑刃,能够在代码的海洋中劈波斩浪。对于每一位Linux系统用户来说,掌握Vim的常用命令,就如同获得了维护系统的瑞士军刀。今天,让我们一起…...
C++数组和指针应用实例 -- 实现计算器
C 的数组和C 语言一样,C完全兼容C语言的指针,但是会多出一个this指针 用C实现计算器 case1: 基本实现: #include <iostream>using namespace std;int add(int a,int b) {return ab; }int minu(int a,int b) {return a-b; }int mul(int a,int b) …...
【多电压流程 Multivoltage Flow】- 5.特定工具使用建议(6.Formality)
使用Formality进行形式验证 Formality支持具有低功耗特性的功能等效性检查,如时钟门控、多阈值电压(multiple-Vt)、多电压供电、电源门控以及动态电压和频率缩放。Formality能够识别低功耗单元,例如隔离单元、电平转换器、始终开启单元、保持寄存器和电源门。 Formality支持…...
力扣 72. 编辑距离 python AC
动态规划 class Solution:def minDistance(self, word1, word2):size1 len(word1)size2 len(word2)dp [[0] * (size2 1) for _ in range(size1 1)]for i in range(1, size1 1):dp[i][0] dp[i - 1][0] 1for i in range(1, size2 1):dp[0][i] dp[0][i - 1] 1for i in…...
vue 发布项目
You are not allowed to force push code to a protected branch on this project. 分支做了保护,git中设置允许强制推送...
springBoot实现发送邮箱验证码 redis缓存源码
要在Spring Boot中实现发送邮箱验证码并使用Redis进行缓存,你需要遵循几个步骤。以下是一个简化的示例,展示了如何整合这些功能: 添加依赖 首先,确保你的pom.xml(Maven)或build.gradle(Gradle…...
QT--4
QT 使用定时器完成闹钟 #include "widget.h" #include "ui_widget.h"void Widget::timestart() {timer.start(1000); }void Widget::timeend() {timer.stop(); }Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(t…...
感染了后缀为.360勒索病毒如何应对?数据能够恢复吗?
导言: 在数字化时代的浪潮中,网络安全问题如同暗流涌动,威胁着每一个互联网用户的安宁。而近年来,一种名为.360勒索病毒的新型网络威胁逐渐浮出水面,以其独特的加密方式和狡猾的传播策略,给全球网络安全带…...
JavaSE多态
多态:一个对象在不同条件下表示的不同形态就叫多态。在程序中,多态是父类引用指定子类对象就叫多态。 多态是面向对象程序设计中的第三个特征 // 多态 class Father {String name;public void desc() {System.out.println("----------");Sys…...
M 有效算法
M 有效算法 本题考验二分知识,思路是二分k的取值,就按第一组样例来说当我们k取值为1的时候我们遍历数组想让|8-x|<k1的话x的取值范围是7-9,想让|3-x|<k2的话x的取值范围是1-5,两者x的区间不重合,说明肯定没有x能…...
知识付费系统制作,托管机构如何提高体验课转化率?要注意什么?
现在托管机构非常流行,一所学校周边就会出现好几家托管机构,所以竞争非常激烈。很多托管机构为了扩大生源,会选择体验课来让学生体验,至于如何提高体验课转化率,就看机构的本事了。 1、市场调研:摸清当前我…...
【iOS逆向与安全】网上gw如何自动登录与签到SM2,SM3,SM4算法加解密
1.下载 app 2.frida 调试 3.抓包查看接口 4.分析加密数据 5.易语言编写代码 1 .开始下载 下载好发现有越狱检测,检测点为: -[AppDelegate isJailBreak]; 于是编写插件xm代码 : %hook AppDelegate- (void)isJailBreak{NSLog("AppDelegate is…...
《CKA/CKAD应试指南/从docker到kubernetes 完全攻略》学习笔记 第14章 包管理helm v3
前言 考试大纲: 了解helm是如何工作的,从而实现快速部署应用 本章要点: 考点1:添加helm源 考点2:使用helm 部署应用 前面在使用wordpress + mysql 部署博客应用的时候,需要做许多工作,需要每个pod创建pv和pvc,然后分别创建每个应用pod及svc,整个过程非常麻烦. 如果搭建博客的…...
蓝桥杯备战.19有奖问答dfs
P9230 [蓝桥杯 2023 省 A] 填空问题 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) #include<bits/stdc.h> using namespace std; #define endl \n //#define int long long const int N 2e510; int a[N],w[N]; int ans 0; void dfs(int score,int cnt) {if(cnt>3…...
【JS红宝书学习笔记】第1、2章 初识JS
第1章 什么是JavaScript JavaScript 是一门用来与网页交互的脚本语言,包含以下三个组成部分。 ECMAScript:由 ECMA-262 定义并提供核心功能。文档对象模型(DOM):提供与网页内容交互的方法和接口。浏览器对象模型&…...
IDEA运行Tomcat出现乱码问题解决汇总
最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…...
多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...
PHP和Node.js哪个更爽?
先说结论,rust完胜。 php:laravel,swoole,webman,最开始在苏宁的时候写了几年php,当时觉得php真的是世界上最好的语言,因为当初活在舒适圈里,不愿意跳出来,就好比当初活在…...
遍历 Map 类型集合的方法汇总
1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...
多场景 OkHttpClient 管理器 - Android 网络通信解决方案
下面是一个完整的 Android 实现,展示如何创建和管理多个 OkHttpClient 实例,分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...
安宝特方案丨XRSOP人员作业标准化管理平台:AR智慧点检验收套件
在选煤厂、化工厂、钢铁厂等过程生产型企业,其生产设备的运行效率和非计划停机对工业制造效益有较大影响。 随着企业自动化和智能化建设的推进,需提前预防假检、错检、漏检,推动智慧生产运维系统数据的流动和现场赋能应用。同时,…...
376. Wiggle Subsequence
376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...
听写流程自动化实践,轻量级教育辅助
随着智能教育工具的发展,越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式,也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建,…...
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...
人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式
今天是关于AI如何在教学中增强学生的学习体验,我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育,这并非炒作,而是已经发生的巨大变革。教育机构和教育者不能忽视它,试图简单地禁止学生使…...
