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

理解docker命令

基础命令

帮助命令

docker --help(帮助命令)

用于获取某个命令的帮助信息

#命令帮助
docker 命令 --help

小技巧

换行符 '\'

使用命令换符,可以让繁杂命令变得有条理

#命令换行,使用换行符 \
docker ... \... \

镜像命令

docker pull(拉取镜像)

对于常用镜像可以从官方镜像仓库获取,pull命令拉取到本地镜像仓库

docker pull 镜像名或者镜像名:tag#注意:如果pull后不指定镜像版本(或叫标签),直接使用镜像名=镜像名:latest,也就是下载最新的-英[ˈleɪtɪst]:最新的
docker pull 镜像名:latest

 docker images(查看镜像)

查看镜像,镜像的英文image,其复数形式images,所以有

#镜像查看
docker images

docker rmi(删除镜像)

那么镜像删除呢?镜像英文image,所以 ‘rm’ +‘i’ 

#镜像删除
docker rmi 镜像名或者镜像id

docker tag(修改镜像名)

如果要修改镜像名(或者叫标签名),使用tag


docker tag 镜像名:tag 新镜像名和tagdocker tag 镜像id 新镜像名和tag

docker save(镜像保存成压缩包)

镜像保存成tar压缩包格式,便于文件传输和使用

docker save -o 文件名.tar 镜像名或者镜像id

docker load (镜像加载)

对于tar压缩包格式的镜像,如果想要加载,需使用此指令

docker load -i 压缩包名.tar

容器命令

docker run(运行容器)

docker容器运行,自然而然想到docker run。那么run的是什么?得到什么呢?如何记忆

运行镜像,得到镜像运行后对应的容器,其相当于执行了两步操作:将镜像放入容器中(docker create),然后将容器启动,使之变成运行时容器(docker start)

#注意:镜像名是镜像名:版本,直接使用镜像名=镜像名:latest
docker -run 镜像名或者镜像id

但是还不够,我们需要给容器命名,所以有--name=容器名

docker run --name=容器名 镜像名或者镜像id

容器命名了,还需要让容器在后台启动,所以有了-d

docker run --name=容器名 -d 镜像名或者镜像id

如果主机重启了,你会发现容器不会重新运行,想开机自启动,所以有--restart=always

docker run --name=容器名 -d --restart=always 镜像名或者镜像id

 容器的私有网络如果想通过主机访问,那么需要主机与容器端口映射, -p 主机端口:容器端口

docker run --name=容器名 -d --restart=always -p 主机端口:容器端口 镜像名或者镜像id

目录挂载,是为了解决docker重启后,之前容器运行的配置或者数据丢失,所以要将主机目录与容器目录做映射,使用 -v参数,注意需要确保主机目录存在,否则挂载不生效

#总结:--name 容器命名,-d 后台启动,--restart 开机自启动,-p 端口映射, -v 目录映射(多个映射使用多个-v)
docker run --name=容器名 -d --restart=always -p 主机端口:容器端口 -v 主机目录:容器目录 镜像名或者镜像id

docker rm(删除容器)

容器删除直接记remove缩写rm

#容器删除,针对已经停止的容器
docker rm 容器名或者容器id

docker ps(查看容器)

查看容器,ps是process status,是在Linux系统中是常用的进程管理命令,这里docker ps与之异曲同工

#正在运行的容器查看
docker ps#如果要看所有的容器,比如还能看停止的容器
docker ps -a

docker start/stop/restart(启动/停止/重启容器)

启动/停止/重启容器,自然而然想到start/stop/restart

#启动容器
docker start容器名或者容器id#停止容器
docker stop 容器名或者容器id#重启容器
docker restart 容器名或者容器id

docker update(更新容器)

容器启动后,如果想要更新运行参数,可以使用update命令

docker update 容器名或者容器id 需要追加的参数

docker exec(进入容器)

-i选项代表使用交互方式,-t代表打开一个终端,/bin/bash作用是进入后启动bash命令支持

docker exec -it 容器名或容器id /bin/bash

docker commit(容器内容修改)

进入到容器后,如果想修改其内容,并重新打成新的镜像

docker commit 镜像名或者镜像id 新镜像名和tag#参数-a author缩写,-m message缩写
docker commit -a "作者" -m "描述" 镜像名或者镜像id 新镜像名和tag

docker logs(查看容器日志)

有时需要排查容器运行的问题,可以使用logs命令

docker logs 容器名或者容器id

docker cp (主机与容器文件拷贝)

#从容器拷贝到主机
docker cp 容器id:容器文件或目录 主机文件或目录#从主机拷贝到容器
docker cp 主机文件目录 容器id:容器文件或目录

远程操作

镜像命令

docker login(登录到docker镜像仓库)

docker login -u "用户名" -p "密码" 远程镜像仓库地址(不写默认官方)

 docker logout(退出登录)

docker logout

docker push(推送镜像到远程仓库)

docker push 镜像名或镜像id

待续。。。

相关文章:

理解docker命令

基础命令 帮助命令 docker --help(帮助命令) 用于获取某个命令的帮助信息 #命令帮助 docker 命令 --help 小技巧 换行符 \ 使用命令换符,可以让繁杂命令变得有条理 #命令换行,使用换行符 \ docker ... \... \ 镜像命令 d…...

【SA8295P 源码分析】16 - QNX侧 TouchScreen Panel (TP)线程函数 tp_recv_thread 源码分析

【SA8295P 源码分析】16 - QNX侧 TouchScreen Panel (TP)线程函数 tp_recv_thread 源码分析 一、TP 线程函数:tp_recv_thread()二、处理&上报 坐标数据 cypress_read_touch_data()系列文章汇总见:《【SA8295P 源码分析】00 - 系列文章链接汇总》 本文链接:《【SA8295P…...

第九章MyBatis的技巧

${}和#{}的区别 #{}给sql语句的占位符传值${}直接将值拼接到sql语句上,存在sql注入的现象 什么时候用${} 需要先对sql语句拼接,然后再编译。 字符串排序字段向SQL语句中拼接表名。比如根据日期生成日志表 批量删除 delete from car where in(${ids}…...

计算机技术与软件专业技术资格(水平)考试----系统架构设计师

【原文链接】计算机技术与软件专业技术资格(水平)考试----系统架构设计师 考试简介 计算机软件资格考试是由国家人力资源和社会保障部、工业和信息化部领导下的国家级考试。计算机软件资格考试既是职业资格考试,又是职称资格考试。考试合格…...

使用nrm快速切换npm源以及解决Method Not Implemented

文章目录 什么是nrm如何使用nrm查看本机目前使用的npm 源安装nrm查看可选源查看当前使用源切换源添加源删除源测试源的响应时间 如果你遇到这个报错,就可以采用这种方案解决哦解决方案:1. 切换为官方源2. 查看漏洞3. 修复漏洞4. 下面命令慎重使用&#x…...

NVIDIA Jetson 项目:机器人足球比赛

推荐:使用 NSDT场景编辑器 助你快速搭建可二次编辑器的3D应用场景 事实上,整个比赛都致力于这个想法。RoboCup小型联盟(SSL)视觉停电技术挑战赛鼓励团队“探索本地传感和处理,而不是非车载计算机和全球摄像机感知环境的…...

【论文解读】Hybrid-SORT: Weak Cues Matter for Online Multi-Object Tracking

因为Hybrid-SORT的baseline是基于OCSORT进行改进的,在这之前建议先了解byteTrack和【】的相关知识 1.介绍 1.1 基本框架 多目标跟踪(MOT)将问题分为两个子任务。第一个任务是检测每个帧中的对象。第二个任务是将它们在不同的框架中联系起来。关联任务主要通过显式…...

Microsoft 图像BERT,基于大规模图文数据的跨模态预训练

视觉语言任务是当今自然语言处理(NLP)和计算机视觉领域的热门话题。大多数现有方法都基于预训练模型,这些模型使用后期融合方法融合下游任务的多模态输入。然而,这种方法通常需要在训练期间进行特定的数据注释,并且对于…...

vue3+elementUI-plus实现select下拉框的虚拟滚动

网上查了几个方案,要不就是不兼容,要不就是不支持vue3, 最终找到一个合适的,并且已上线使用,需要修改一下样式: 代码如下: main.js里引用 import vue3-virtual-scroller/dist/vue3-virtual-scroller.css; …...

学C的第三十四天【程序环境和预处理】

相关代码gitee自取: C语言学习日记: 加油努力 (gitee.com) 接上期: 学C的第三十三天【C语言文件操作】_高高的胖子的博客-CSDN博客 1 . 程序的翻译环境和执行环境 在ANSI C(C语言标准)的任何一种实现中,存在两个不同的环境。 &#xff0…...

微服务中间件--Ribbon负载均衡

Ribbon负载均衡 a.Ribbon负载均衡原理b.Ribbon负载均衡策略 (IRule)c.Ribbon的饥饿加载 a.Ribbon负载均衡原理 1.发起请求http://userservice/user/1,Ribbon拦截该请求 2.Ribbon通过EurekaServer拉取userservice 3.EurekaServer返回服务列表给Ribbon做负载均衡 …...

字符设备驱动实例(ADC驱动)

四、ADC驱动 ADC是将模拟信号转换为数字信号的转换器,在 Exynos4412 上有一个ADC,其主要的特性如下。 (1)量程为0~1.8V。 (2)精度有 10bit 和 12bit 可选。 (3)采样时钟最高为5MHz,转换速率最高为1MSPS (4)具有四路模拟输入,同一时…...

python基础5——正则、数据库操作

文章目录 一、数据库编程1.1 connect()函数1.2 命令参数1.3 常用语句 二、正则表达式2.1 匹配方式2.2 字符匹配2.3 数量匹配2.4 边界匹配2.5 分组匹配2.6 贪婪模式&非贪婪模式2.7 标志位 一、数据库编程 可以使用python脚本对数据库进行操作,比如获取数据库数据…...

SpringAOP原理:手写动态代理实现

0、基础知识 AOP我们知道,是在不修改源代码的情况下,为代码添加一些新功能的技术。通过动态代理,可以在不修改原始类代码的前提下,对方法进行拦截和增强。 动态代理常用于在不改变原有业务逻辑的情况下,对方法…...

【旅游度假】Axure酒店在线预订APP原型图 旅游度假子模块原型模板

作品概况 页面数量:共 10 页 兼容软件:Axure RP 9/10,不支持低版本 应用领域:旅游度假,生活服务 作品申明:页面内容仅用于功能演示,无实际功能 作品特色 本作品为「酒店在线预订」的移动端…...

Android JNI系列详解之CMake和ndk-build编译工具介绍

一、前提 CMake和ndk-build只是编译工具,本次主要介绍ndk-build和CMake的区别,下节课介绍他们的使用。 二、CMake工具介绍 CMake:cross platform make,是跨平台的编译工具 CMake是在AndroidStudio2.2之后引入(目前默认…...

【Linux取经路】解析环境变量,提升系统控制力

文章目录 一、进程优先级1.1 什么是优先级?1.2 为什么会有优先级?1.3 小结 二、Linux系统中的优先级2.1 查看进程优先级2.2 PRI and NI2.3 修改进程优先级2.4 进程优先级的实现原理2.5 一些名词解释 三、环境变量3.1 基本概念3.2 PATH:Linux系…...

TCP编程流程(补充)

目录 1、listen: 2、listen、tcp三次握手 3、 发送缓冲区和接收缓冲区: 4、tcp编程启用多线程 1、listen: 执行listen会创建一个监听队列 listen(sockfd,5) 2、listen、tcp三次握手 三次握手 3、 发送缓冲区和接收缓冲区:…...

每天一道leetcode:433. 最小基因变化(图论中等广度优先遍历)

今日份题目: 基因序列可以表示为一条由 8 个字符组成的字符串,其中每个字符都是 A、C、G 和 T 之一。 假设我们需要调查从基因序列 start 变为 end 所发生的基因变化。一次基因变化就意味着这个基因序列中的一个字符发生了变化。 例如,&quo…...

【C++】做一个飞机空战小游戏(十)——子弹击落炮弹、炮弹与飞机相撞

[导读]本系列博文内容链接如下: 【C】做一个飞机空战小游戏(一)——使用getch()函数获得键盘码值 【C】做一个飞机空战小游戏(二)——利用getch()函数实现键盘控制单个字符移动【C】做一个飞机空战小游戏(三)——getch()函数控制任意造型飞机图标移动 【C】做一个飞…...

基于大模型的 UI 自动化系统

基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...

Linux 文件类型,目录与路径,文件与目录管理

文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...

如何在看板中有效管理突发紧急任务

在看板中有效管理突发紧急任务需要:设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP(Work-in-Progress)弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中,设立专门的紧急任务通道尤为重要,这能…...

MODBUS TCP转CANopen 技术赋能高效协同作业

在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...

06 Deep learning神经网络编程基础 激活函数 --吴恩达

深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...

代码随想录刷题day30

1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...

C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)

名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...

[ACTF2020 新生赛]Include 1(php://filter伪协议)

题目 做法 启动靶机,点进去 点进去 查看URL,有 ?fileflag.php说明存在文件包含,原理是php://filter 协议 当它与包含函数结合时,php://filter流会被当作php文件执行。 用php://filter加编码,能让PHP把文件内容…...

基于Java+VUE+MariaDB实现(Web)仿小米商城

仿小米商城 环境安装 nodejs maven JDK11 运行 mvn clean install -DskipTestscd adminmvn spring-boot:runcd ../webmvn spring-boot:runcd ../xiaomi-store-admin-vuenpm installnpm run servecd ../xiaomi-store-vuenpm installnpm run serve 注意:运行前…...

区块链技术概述

区块链技术是一种去中心化、分布式账本技术,通过密码学、共识机制和智能合约等核心组件,实现数据不可篡改、透明可追溯的系统。 一、核心技术 1. 去中心化 特点:数据存储在网络中的多个节点(计算机),而非…...