Docker基本操作命令
Docker 是一个开源的应用容器引擎,允许开发者打包应用以及其依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。主要功能是为开发者提供一个简单、轻量级且一致的工作环境,无论在开发环境、测试环境还是生产环境中,都能确保应用表现一致。它通过容器化技术,实现应用的快速部署、扩展和管理。
Docker 使用客户端-服务器架构,Docker 客户端与 Docker 守护进程通信,Docker 守护进程负责构建、运行和分发容器。用户可以通过命令行界面与 Docker 交互,执行各种操作,如构建镜像、启动容器、管理镜像和容器等。
Docker 技术在云计算、微服务架构和持续集成/持续部署(CI/CD)领域中得到了广泛应用。
以下是记录Docker的基本指令,便于自查,持续更新,觉得不错的小伙伴可以收藏,可以点赞,请大家多多支持!
1.Docker启动命令
启动 Docker 服务的命令取决于你使用的操作系统,是Linux,windows,还是max,每个操作系统肯定存在差异。
1.1 在 Linux 上启动 Docker
对于使用 systemd 的 Linux 发行版,如 Ubuntu、Debian、CentOS、Fedora 等,你可以使用以下命令来Docker来操作启动相关服务命令。
- 启动docker
systemctl start docker
- 停止docker
systemctl stop docker
- 重启docker
systemctl restart docker
- 开机启动
systemctl enable docker
- 查看docker运行状态
systemctl status docker
1.2 在 macOS 或 Windows 上启动 Docker
对于 Docker Desktop for Mac 和 Docker Desktop for Windows 用户,Docker 通常通过图形用户界面(GUI)管理。只需启动 Docker 应用即可,无需使用命令行。
安装Docker图形化工具后:
- 在 macOS 上,你可以通过在应用程序菜单中找到 Docker 并点击打开。
- 在 Windows 上,可以通过开始菜单搜索 Docker 并点击启动,或者在系统托盘中找到 Docker 图标并双击。
注意事项
- 确保你有足够的权限来启动 Docker 服务(可能需要
sudo)。 - 在某些配置中,Docker 可能已经被设置为在系统启动时自动启动。
- 如果你在使用 Docker Desktop,确保已经安装了最新版本,并且所有设置都是正确的。
2 Docker帮助命令
Docker 提供了多种帮助命令,可以帮助用户了解如何使用 Docker 及其各种命令。以下是一些常用的 Docker 帮助命令:
- 查看docker的总体帮助文档
docker help 命令提供了关于 Docker 命令行界面的基本使用信息。当在命令行中输入 docker help 并执行,它会列出 Docker 程序的主要命令,并提供关于如何使用这些命令的简要说明
docker --help
- 查看docker命令帮助文档
要获取关于特定 Docker 命令的详细信息,你可以在 docker 后面加上该命令名和 --help。例如,要获取 docker ps 命令的帮助信息,你可以执行:
docker 具体命令 --helpdocker ps --help
这将输出 docker ps 命令的使用格式和可用选项的详细说明
3.Docker 信息命令
3.1 命令说明
Docker info 命令在 Docker 中用于显示有关当前 Docker 宿主机的环境和配置的信息。这个命令提供了大量的细节,包括 Docker 版本、操作系统、内核版本、驱动程序、容器、镜像和存储卷的数量,以及更多关于 Docker 守护进程状态的信息。docker info 是一个非常有用的命令,可以提供关于 Docker 宿主机的全面信息,有助于日常管理和故障排查。
docker logs [OPTIONS] CONTAINER
参数说明
- CONTAINER:容器的 ID 或名称。
选项说明
- -f, --follow:跟踪日志输出,类似于
tail -f。 - -t, --timestamps:在日志中显示时间戳。
- --tail:仅显示最新的 N 条日志(例如
--tail="all"显示所有日志)。
示例:
# 查看容器日志
docker logs container_id# 查看带有时间戳的容器日志
docker logs -t container_id# 实时跟踪容器日志
docker logs -f container_id# 查看容器的最后几条日志
docker logs --tail=5 container_id# 查看从特定时间点开始的日志
docker logs --since="2021-03-15T12:00:00" container_id
3.2 使用场景
- 故障排查:当遇到 Docker 相关问题时,docker info 提供的详细信息可以帮助你或 Docker 社区更快地定位问题。
- 系统管理:了解系统资源使用情况和 Docker 配置,有助于进行系统维护和优化。
- 环境确认:在部署新应用或扩展现有服务前,确认 Docker 环境的配置和状态。
该命令使用时注意事项:
- 容器必须处于运行状态,你才能查看其日志。
- 日志默认是从容器的 stdout 和 stderr 输出的。
- 如果容器停止了,你仍然可以查看其历史日志。
- 使用 -f 选项时,你可以通过发送 Ctrl+C 来停止跟踪日志。
4.Docker 登陆与登出命令
要与 Docker Hub 或其他 Docker 仓库进行交互,你需要使用 Docker 登录和登出命令
4.1 登录 Docker 仓库
登陆到一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub
docker login [OPTIONS] [SERVER]
参数说明:
[SERVER]:仓库地址,如 Docker Hub 的地址是docker.io。
选项说明:
-u或-username:你的 Docker 用户名。-p或-password:你的 Docker 密码。
docker login -u username -p password
在执行该命令后,Docker 会提示你输入用户名和密码
4.2 登出 Docker 仓库
登出一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub
docker logout [SERVER]
参数说明:
[SERVER]:仓库地址,如果未指定,默认是 Docker Hub。
#登出Docker Hub
docker logout
注意事项
- 登录信息(用户名和密码)在 Docker 的认证存储中是加密保存的。
- 如果你需要为不同的 Docker 仓库服务配置不同的凭据,可以为每个仓库执行 docker login 命令。
- 登出操作不会影响已经保存的登录凭据,只是结束了当前的会话。
- 如果你使用了 Docker Desktop,登录状态会在 Docker Desktop 的 GUI 中显示,也可以在那里登出。
5. Docker版本
如果你想要查看详细的版本信息,包括客户端和服务器的所有独立组件的版本号,可以使用:
docker version
这将显示包括 Docker 社区版引擎、客户端(Client)和服务器(Server)的版本信息,如 API 版本、Go 版本、Git 提交 ID、构建时间、操作系统和架构等。
如果你只需要某个特定部分的信息,可以使用 --format 选项来格式化输出。例如,要只输出服务器的版本信息,可以使用:
# 仅显示 Docker 服务器的版本号
docker version --format '{{.Server.Version}}'
也可以使用以下命令查看 Docker 的版本信息
docker --version
6.最后
感谢大家,请大家多多支持!
相关文章:
Docker基本操作命令
Docker 是一个开源的应用容器引擎,允许开发者打包应用以及其依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。主要功能是为开发者提供一个简单…...
开源计算器应用的全面测试计划:确保功能性和可靠性
✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...
uni.requestPayment 支付成功之后会走 wx.onAppRoute
uni.requestPayment 是用于发起微信支付的统一接口,而 wx.onAppRoute 是用于监听小程序的路由变化。当 uni.requestPayment 支付成功后,如果发生了页面跳转或者其他路由变化,wx.onAppRoute 会被触发。这个行为是正常的,因为支付成…...
统⼀服务入口 - Gateway
网关介绍 问题 在 spring cloud 体系中我们通过 Eureka,Nacos 解决了服务注册,服务发现的问题,使⽤Spring Cloud LoadBalance解决了负载均衡的问题,使⽤ OpenFeign 解决了远程调⽤的问题. 但是当前所有微服务的接⼝都是直接对外暴露的,可以直接通过外部访问.为了保证对外服务的…...
QGraphicsWidget Class
Header:#include < QGraphicsWidget > qmake:QT += widgets Since:Qt 4.4 Inherits:QGraphicsObject and QGraphicsLayoutItem Inherited By:QGraphicsProxyWidget This class was introduced in Qt 4.4. Public Types enum anonymous {Type }Properties autoFi…...
探讨最好用的AI工具:从日常到创新的应用
文章目录 引言常用AI工具1. 语音助手2. 图像识别软件3. 机器翻译工具4. 智能客服系统 创新AI应用1. 自动驾驶汽车2. 虚拟试衣间3. 医疗影像分析4. 个性化推荐系统 个人体验分享1. 通义灵码2. 文心一言3. 智能写作助手4. 智能家居设备5. DALLE6. Whisper7. Codex8. Gym9. ChatGP…...
Python系统教程005(字符串的格式化输出)
知识回顾 1、默认情况下,input函数接收的数据是字符串类型。 2、字符串类型的关键词是str。 3、\n和\t都是转义字符,\n用来换行,\t用来留出一段固定长度的空白。 4、type函数能够用来查看变量的数据类型 5、数据类型的转换,举…...
六款电脑远程控制软件分享,2024最热门软件合集,总有一款适合你!速来看!
想要随时随地控制自己的电脑? 无论你是办公需求,还是要远程协助他人,一款好用的远程控制软件绝对少不了。 2024年最热门的六款远程控制软件已经为你准备好,总有一款适合你,赶快往下看吧! 1. 安企神系统—…...
优质微信群不再难寻!掌握这些技巧就够了!
在当今信息爆炸的时代,微信群已成为人们交流思想、分享知识、建立人脉的重要平台。无论是专业领域的深入探讨,还是兴趣爱好的自由交流,微信群都能为你提供一个即时互动的虚拟空间。然而,面对海量的微信群信息,如何高效…...
python - mysql操作
Python MySQL 操作 1. 背景介绍 常见的Mysql驱动介绍: MySQL-python:也就是MySQLdb。是对C语言操作MySQL数据库的一个简单封装。遵循了Python DB API v2。但是只支持Python2,目前还不支持Python3。mysqlclient:是MySQL-python的…...
基于Springboot+Vue的服装生产管理信息系统设计与实现(含源码数据库)
1.开发环境 开发系统:Windows10/11 架构模式:MVC/前后端分离 JDK版本: Java JDK1.8 开发工具:IDEA 数据库版本: mysql5.7或8.0 数据库可视化工具: navicat 服务器: SpringBoot自带 apache tomcat 主要技术: Java,Springboot,mybatis,mysql,vue 2.视频演示地址 3.功能 在这个…...
75.【C语言】文件操作(2)
承接74.【C语言】文件操作(1)文章 目录 5.详细阐释文件的打开和关闭 1.流 2.标准流 3.文件指针 FILE 两层含义 附:FILE的头文件 4.操作文件的步骤 1.fopen函数 编辑 简写的全称查询 输入&输出的含义 2.fclose函数 3.代码示例 补充:绝对路径和相对路径 注意…...
Redis 使用记录
封装调用redis类 import redis from conf.config import RedisConfigclass RedisConfig:redis_json config_data[redis_config]redis_pwd env.get(project_name).get(pwd)host redis_json.get("host")dialog_states_db redis_json.get("dialog_states_db&q…...
IDEA实用小技巧
1. IDEA代码提示忽略大小写 打开设置,点击Editor–>General–>Code Completion ,然后将右侧的Match Case前面的选框去掉勾选。 2. 快速查找接口RestfulToolkitX插件 该插件可以快速查找接口(快捷键为CTRL\) 还会在侧边栏…...
PEI转染试剂对血清的敏感性研究
在细胞生物学和基因工程领域,聚乙烯亚胺(PEI)作为一种常用的转染试剂,广泛应用于基因的递送。然而,PEI转染试剂对血清的敏感性一直是研究的热点问题。转染过程中,血清作为培养基的成分之一,可能…...
手机怎样改网络ip地址?内容详尽实用
随着网络技术的发展,更改手机IP地址已成为一种常见需求。本文将详细介绍如何在不同网络环境下更改手机IP地址,包括移动网络和WiFi网络,以及同时适用于两种网络的方法,内容详尽实用,干货满满。 一、适用于移动网络&…...
使用Pybind11,Python调用C++动态库
最近学习了一下pybind11,使用python来调用C动态库的模式,在某些场景下有用,这里做一个记录。 环境准备 安装python,我这里安装的是3.12版本 下载Pybind11库,这是一个仅包含头文件的轻量级库,使用起来非常…...
提交gitlab
1.gitlab上新建项目 2.git clone url把新项目拉下来 3.git add ./* 把需要提交的文件全部新增 4.git config --global user.email “yetuo.zhuqxsk.local” 身份认证一下 5.git commit -m “asr语音识别-对外服务” 提交 6.git push origin 推送进去 git init git add . git c…...
金慧-综合管理信息系统 LoginBegin.aspx SQL注入复现
0x01 产品描述: 金慧-综合管理信息系统(以下简称“金慧综合管理系统”)是上海金慧软件有限公司基于多年行业系统研发和实施经验,为各类企业量身定制的一套综合性管理解决方案。该系统旨在通过信息化手段,提升企业的管理…...
RHCSA的学习(4)
一、vi编辑器 (1)为什么学vi? 所有的Unix Like 系统都会内建 vi 文本编辑器,其他的文本编辑器则不一定会存在; 很多个别软件的编辑接口都会主动呼叫 vi (例如未来会谈到的 crontab, visudo, edquota 等指令)&#x…...
调用支付宝接口响应40004 SYSTEM_ERROR问题排查
在对接支付宝API的时候,遇到了一些问题,记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...
[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...
数据链路层的主要功能是什么
数据链路层(OSI模型第2层)的核心功能是在相邻网络节点(如交换机、主机)间提供可靠的数据帧传输服务,主要职责包括: 🔑 核心功能详解: 帧封装与解封装 封装: 将网络层下发…...
Psychopy音频的使用
Psychopy音频的使用 本文主要解决以下问题: 指定音频引擎与设备;播放音频文件 本文所使用的环境: Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...
MySQL中【正则表达式】用法
MySQL 中正则表达式通过 REGEXP 或 RLIKE 操作符实现(两者等价),用于在 WHERE 子句中进行复杂的字符串模式匹配。以下是核心用法和示例: 一、基础语法 SELECT column_name FROM table_name WHERE column_name REGEXP pattern; …...
MySQL用户和授权
开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务: test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...
Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)
Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习) 一、Aspose.PDF 简介二、说明(⚠️仅供学习与研究使用)三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...
Selenium常用函数介绍
目录 一,元素定位 1.1 cssSeector 1.2 xpath 二,操作测试对象 三,窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四,弹窗 五,等待 六,导航 七,文件上传 …...
论文阅读笔记——Muffin: Testing Deep Learning Libraries via Neural Architecture Fuzzing
Muffin 论文 现有方法 CRADLE 和 LEMON,依赖模型推理阶段输出进行差分测试,但在训练阶段是不可行的,因为训练阶段直到最后才有固定输出,中间过程是不断变化的。API 库覆盖低,因为各个 API 都是在各种具体场景下使用。…...
Qt 事件处理中 return 的深入解析
Qt 事件处理中 return 的深入解析 在 Qt 事件处理中,return 语句的使用是另一个关键概念,它与 event->accept()/event->ignore() 密切相关但作用不同。让我们详细分析一下它们之间的关系和工作原理。 核心区别:不同层级的事件处理 方…...
