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

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、默认情况下&#xff0c;input函数接收的数据是字符串类型。 2、字符串类型的关键词是str。 3、\n和\t都是转义字符&#xff0c;\n用来换行&#xff0c;\t用来留出一段固定长度的空白。 4、type函数能够用来查看变量的数据类型 5、数据类型的转换&#xff0c;举…...

六款电脑远程控制软件分享,2024最热门软件合集,总有一款适合你!速来看!

想要随时随地控制自己的电脑&#xff1f; 无论你是办公需求&#xff0c;还是要远程协助他人&#xff0c;一款好用的远程控制软件绝对少不了。 2024年最热门的六款远程控制软件已经为你准备好&#xff0c;总有一款适合你&#xff0c;赶快往下看吧&#xff01; 1. 安企神系统—…...

优质微信群不再难寻!掌握这些技巧就够了!

在当今信息爆炸的时代&#xff0c;微信群已成为人们交流思想、分享知识、建立人脉的重要平台。无论是专业领域的深入探讨&#xff0c;还是兴趣爱好的自由交流&#xff0c;微信群都能为你提供一个即时互动的虚拟空间。然而&#xff0c;面对海量的微信群信息&#xff0c;如何高效…...

python - mysql操作

Python MySQL 操作 1. 背景介绍 常见的Mysql驱动介绍&#xff1a; MySQL-python&#xff1a;也就是MySQLdb。是对C语言操作MySQL数据库的一个简单封装。遵循了Python DB API v2。但是只支持Python2&#xff0c;目前还不支持Python3。mysqlclient&#xff1a;是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代码提示忽略大小写 打开设置&#xff0c;点击Editor–>General–>Code Completion &#xff0c;然后将右侧的Match Case前面的选框去掉勾选。 2. 快速查找接口RestfulToolkitX插件 该插件可以快速查找接口&#xff08;快捷键为CTRL\&#xff09; 还会在侧边栏…...

PEI转染试剂对血清的敏感性研究

在细胞生物学和基因工程领域&#xff0c;聚乙烯亚胺&#xff08;PEI&#xff09;作为一种常用的转染试剂&#xff0c;广泛应用于基因的递送。然而&#xff0c;PEI转染试剂对血清的敏感性一直是研究的热点问题。转染过程中&#xff0c;血清作为培养基的成分之一&#xff0c;可能…...

手机怎样改网络ip地址?内容详尽实用

随着网络技术的发展&#xff0c;更改手机IP地址已成为一种常见需求。本文将详细介绍如何在不同网络环境下更改手机IP地址&#xff0c;包括移动网络和WiFi网络&#xff0c;以及同时适用于两种网络的方法&#xff0c;内容详尽实用&#xff0c;干货满满。 一、适用于移动网络&…...

使用Pybind11,Python调用C++动态库

最近学习了一下pybind11&#xff0c;使用python来调用C动态库的模式&#xff0c;在某些场景下有用&#xff0c;这里做一个记录。 环境准备 安装python&#xff0c;我这里安装的是3.12版本 下载Pybind11库&#xff0c;这是一个仅包含头文件的轻量级库&#xff0c;使用起来非常…...

提交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 产品描述&#xff1a; 金慧-综合管理信息系统&#xff08;以下简称“金慧综合管理系统”&#xff09;是上海金慧软件有限公司基于多年行业系统研发和实施经验&#xff0c;为各类企业量身定制的一套综合性管理解决方案。该系统旨在通过信息化手段&#xff0c;提升企业的管理…...

RHCSA的学习(4)

一、vi编辑器 &#xff08;1&#xff09;为什么学vi&#xff1f; 所有的Unix Like 系统都会内建 vi 文本编辑器&#xff0c;其他的文本编辑器则不一定会存在&#xff1b; 很多个别软件的编辑接口都会主动呼叫 vi (例如未来会谈到的 crontab, visudo, edquota 等指令)&#x…...

linux-二进制工具

二进制查看工具: 1、hexdump -n length 只格式化输入文件的前length个字节 -C 输出规范的十六进之和ASCII码 -b 单字节八进制显示 -c 单字节字符显示 -d 双字节十进制显示 -o 双字节八进制显示 -x 双字节十六进制显示 -s 从偏移量开始输出 2、od(octal dump) 用于显示文件内…...

《数据结构》学习系列

系列文章目录 一、绪论 二、线性表、链表 三、堆栈、队列 四、数组 五、字符串 六、树...

沂机管理系统/data/Ajax.aspx接口存在SQL注入漏洞

漏洞描述 沂机管理系统/data/Ajax.aspx接口存在SQL注入漏洞&#xff0c;攻击者可以获取服务器权限 漏洞复现 body"后台管理系统演示版" POC GET /data/Ajax.aspx?methodlog_list&page1&limit20&fkey1&fdate12024-10-0100%3A00%3A00&fdate2…...

JVM 内存模型与垃圾回收过程详解

JVM 内存模型与垃圾回收过程详解 文章目录 JVM 内存模型与垃圾回收过程详解1. JVM内存分区1.1 具体分区1.2 JVM内存分区的必要性 2. 垃圾回收2.1 CMS垃圾回收器2.2 G1垃圾回收器2.3 JVM垃圾回收从新生代到老年代 1. JVM内存分区 1.1 具体分区 Java虚拟机&#xff08;JVM&#…...

python:PyPDF2 将多个图片转换为pdf,再合并成一个PDF文件

承上一篇&#xff1a;java&#xff1a;pdfbox 3.0 去除扫描版PDF中文本水印 # 导出扫描版PDF文件中每页的图片文件 java -jar pdfbox-app-3.0.3.jar export:images -prefixtest -i your_book.pdf 导出 Writing image: test-1.jpg Writing image: test-2.jpg Writing image: t…...

Python精选200Tips:186-190

针对序列&#xff08;时间、文本&#xff09;数据的网络结构 续 P186-- 双向LSTM(Bidirectional Long Short-Term Memory 2005)&#xff08;1&#xff09;模型结构说明&#xff08;2&#xff09;创新性说明&#xff08;3&#xff09;示例代码&#xff1a;IMDB电影评论情感分析 …...

C、C++常用数据结构:链表

文章目录 基本概念链表的创建链表结点定义链表创建 链表遍历链表释放链表查找链表删除链表插入测试用例 基本概念 参考&#xff1a;链表基础知识详解&#xff08;非常详细简单易懂&#xff09;-CSDN博客 链表是一种线性存储结构&#xff0c;链表在物理存储上是非连续的&#xf…...

【devops】devops-ansible之剧本变量使用

本站以分享各种运维经验和运维所需要的技能为主 《python零基础入门》:python零基础入门学习 《python运维脚本》: python运维脚本实践 《shell》:shell学习 《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战 《k8》从问题中去学习k8s 《docker学习》暂未更…...

《Linux从小白到高手》理论篇:一文概览常用Linux重要配置文件

List item 今天继续宅家&#xff0c;闲来无事接着写。本篇是《Linux从小白到高手》理论篇的最后一篇了。本篇集中介绍所有常用的Linux重要配置文件。 用这个命令可以查看配置文件所在的位置&#xff1a;如上图 locate "*.conf" "*.ini" "*.cfg&quo…...

采购管理流程:掌握最后阶段的关键要点

采购管理流程是企业运作中的核心职能之一&#xff0c;涵盖了获取商品和服务的一系列步骤&#xff0c;旨在以高效率和经济效益的方式进行。深入理解该流程的每个环节极为关键&#xff0c;特别是最后阶段&#xff0c;这可确保所有采购活动的圆满完成以及与供应商维持良好关系。 …...