Docker-命令

news2025/1/12 8:49:06

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、Docker架构
  • 二、Docker进程相关命令
    • (一)启动 docker 服务
    • (二)重启 docker 服务
    • (三)停止 docker 服务
    • (四)查看 docker 服务状态
    • (五)设置开机启动 docker 服务
  • 三、Docker 镜像相关命令
    • (一)查看镜像
    • (二)搜索镜像
    • (三)拉取镜像
    • (四)删除镜像
    • (五)保存镜像
    • (六)加载镜像
  • 四、Docker 容器相关命令
    • (一)查看容器
    • (二)查看容器日志
    • (三)启动容器
    • (四)停止容器
    • (五)删除容器
    • (六)进入容器内部
    • (七)退出容器内部
  • 五、Docker-Compose命令
    • (一)启动服务
    • (二)停止服务
    • (三)构建服务
    • (四)查看服务日志
    • (五)查看正在运行的服务
    • (六)删除所有服务容器
  • 总结


前言

提示:详细内容查看黑马程序员教程:

• Docker 是一个开源的应用容器引擎
• 诞生于 2013 年初,基于 Go 语言实现, dotCloud 公司出品(后改名为Docker Inc)
• Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux 机器上。
• 容器是完全使用沙箱机制,相互隔离
• 容器性能开销极低。
• Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版)


提示:重点理解docker架构。特别是镜像、容器概念

一、Docker架构

镜像(Image):Docker镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统

容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和对象一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等

仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像

在这里插入图片描述

二、Docker进程相关命令

(一)启动 docker 服务

systemctl start docker

(二)重启 docker 服务

systemctl restart docker

(三)停止 docker 服务

systemctl stop docker

(四)查看 docker 服务状态

systemctl status docker

(五)设置开机启动 docker 服务

systemctl enable docker

三、Docker 镜像相关命令

(一)查看镜像

查看本地所有镜像

docker images
docker images -q #查看所有镜像的id

各个选项说明:
REPOSITORY: 表示镜像的仓库源
TAG : 镜像的标签
IMAGE ID : 镜像ID
CREATED : 镜像创建时间
SIZE : 镜像大小

(二)搜索镜像

从网络中查找需要的镜像

docker search 镜像名称

例如:查询mysql 镜像

docker search mysql

(三)拉取镜像

docker pull 镜像名称
docker pull mysql #拉取mysql镜像,没指定版本号,默认最新版本镜像

(四)删除镜像

删除本地镜像

docker rmi 镜像id
docker rmi -f 镜像名/镜像ID

#批量删除镜像
docker rmi $(docker images -aq)
docker rmi 'docker images -aq'

(五)保存镜像

在/root 目录下有个test文件,将mysql的镜像文件打包成tar包保存

docker save -o [保存路径/镜像文件名].tar [镜像名]:[标签]

在/root 目录下有个test文件,将mysql的镜像文件打包成tar包保存

docker save -o /root/test/mysql.tar mysql:latest

(六)加载镜像

docker load -i [镜像文件名].tar

将上述的mysql.tar镜像文件包,加载成镜像

docker load -i mysql.tar

四、Docker 容器相关命令

(一)查看容器

1、查看正在运行的容器

docker ps 

2、查看所有的容器
正在运行的容器和已停止运行的容器

docker ps -a

3、查看最近运行的两个

docker ps -a -n=2

4、查看正在运行的容器的id

docker ps -q

5、查看所有容器的id

docker ps -aq

6、查看容器内部进程

docker top <容器id或名称> bash

7、与容器内部进行交互

docker exec -it <容器id或名称> bash

8、查询最后一次创建的容器

docker ps -l

(二)查看容器日志

1、查看容器运行日志

docker logs <容器id或名称>

2、实时展示容器日志

docker logs -f <容器id或名称>

3、加入时间戳展示日志

docker logs -tf <容器id或名称>

4、查看最后n行日志

docker logs --tail 5 <容器id或名称>

(三)启动容器

1、docker 启动一个容器

docker run -it <镜像名称> /bin/bash
docker run -it ubuntu /bin/bash  #启动ubuntu镜像
参数说明:
-i:交互式操作
-t:终端

2、启动已停止运行的容器

docker start <容器id>

3、重启一个容器

docker restart <容器id>

4、启动容器并将容器挂载后台运行

docker run -itd --name ubuntu-test ubuntu /bin/bash ##启动一个ubuntu容器
参数说明:
-d:默认不会进入容器

5、启动容器映射端口号,后台启动,指定容器名称

docker run -p 8080:8080 --name 容器名称 -d 镜像名称:版本号

(四)停止容器

1、停止

docker stop <容器名称或者容器id>

2、杀死一个容器

docker kill <容器名称或者容器id>

3、停止全部容器

docker stop $(docker ps -a -q)

(五)删除容器

docker rm <容器id或者名称>
docker rm -f <容器id或者名称>
docker rm -f $(docker ps -aq) #删除全部容器

(六)进入容器内部

1、进入容器后,退出容器,容器停止

docker attach <容器id>

2、进入容器后,退出容器,不会导致容器停止

docker exec <容器id>
docker exec <容器id> /bin/bash

(七)退出容器内部

exit

再加上一份图,展示命令使用过程
在这里插入图片描述

五、Docker-Compose命令

(一)启动服务

docker-compose up
启动服务,服务在后台运行
docker-compose up -d

(二)停止服务

docker-compose down

(三)构建服务

docker-compose build

(四)查看服务日志

docker-compose logs

# 实时跟踪日志
docker-compose logs -f

(五)查看正在运行的服务

docker-compose ps

(六)删除所有服务容器

docker-compose down --volumes

总结

以上就是我们安装docker后会经常使用的命令,然后就是理解 镜像 、容器和服务三者之间的关系。至于仓库很好理解,就是存放镜像的地址,仓库分为官方公共镜像仓库和私有镜像仓库,私有镜像仓库需要身份认证后才能拉取镜像文件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2045329.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C语言——二分法求有序数组中指定元素的位置

二分法只是用于有序的数组&#xff0c;如果是无序输入&#xff0c;还需要进行排序。此外&#xff0c;mid 中间值不是整数&#xff0c;要取整。 #include <stdio.h> #include <stdlib.h> int Bin_search(int* p, int len, int target) { int left 0; int …

数实融合打破场景边界,苏宁大店直播火了!

今年以来&#xff0c;促消费扩内需举措持续发力&#xff0c;创新消费场景作为重点发力方向&#xff0c;在多个场合被提及。近期&#xff0c;国务院《关于促进服务消费高质量发展的意见》进一步提出&#xff0c;加速推动消费场景应用升级和数字赋能&#xff0c;构建智慧商圈、智…

苹果iOS 17.6.1正式推送,有哪些机型值得更新呢?

在科技界&#xff0c;每一次操作系统更新都备受瞩目&#xff0c;尤其是对于苹果这样在全球范围内拥有庞大用户群的品牌而言。 最近&#xff0c;苹果发布了iOS 17.6.1更新&#xff0c;这一小版本更新不仅修复了一系列关键错误&#xff0c;还针对之前版本中存在的问题进行了针对…

纺织设备如何实现信息化转型?

纺织设备的信息化转型&#xff0c;是当代制造业智能化升级的关键一环&#xff0c;它不仅深刻影响着纺织行业的生产效率与产品质量&#xff0c;还促进了整个产业链的创新与优化。这一进程不仅仅是简单地将信息技术融入传统纺织机械中&#xff0c;而是通过深度融合物联网、大数据…

【AI】AI编程工具概述

1. AI编程工具概述 1.1 定义与功能 AI编程工具是利用人工智能技术辅助编程工作的软件集合&#xff0c;它们通过集成到现有的开发环境中&#xff0c;提供代码自动生成、补全、错误检测、优化建议等功能&#xff0c;旨在提高开发效率和代码质量。 代码生成&#xff1a;AI工具可…

[书生大模型实战营][L0][Task1] Linux 远程连接 InternStudio

[书生大模型实战营][Task1] Linux 远程连接 InterStudio 1. 申请 InterStudio 账号 https://studio.intern-ai.org.cn/console/dashboard 2. ssh 生成公匙与密匙 使用 ssh-gen 生成公匙与密匙 # 1. ssh-gen ssh-gen# 2. 查看生成的文件 ls ~/.ssh# 3. 打开生成的公匙&#…

如何在 Linux 系统上创建软硬链接 ?

在本指南中&#xff0c;我将介绍什么是链接以及如何更好地使用它们以及所需的概念。 通过执行 man ln 命令&#xff0c;可以看到这是在文件之间建立链接&#xff0c;而没有提及是软链接或硬链接。 shashilinuxtechi ~}$ man ln类似地&#xff0c;命令 man link 描述为调用链接…

vue-I18n开箱方式

最近公司没什么活&#xff0c;没事捣鼓捣鼓技术 话不多说 上干货 npm i vue-i18nlatest //下载最新版插件创建文件用来存放需要的公共语言 文件夹内容 const zh {message: {Language: "简体中文",name: "中文名称",}, }; export default zh;const ja …

基于微软TTS,优雅的实现文本转语音

项目介绍 该项目源自以前了解的edge-tts&#xff0c;edge-tts 是一个python库&#xff0c;用于将文本转换为语音&#xff0c;它依赖于 Microsoft Azure 的 Text-to-Speech 服务&#xff0c;可以轻松实现本地文字转语音&#xff0c;在所有的文字转语音的服务中&#xff0c;说它…

Unity透视镜透视效果——Shader

一、效果示意图 二、透视的过程 要看的效果&#xff1a;【相机】借助【球体】&#xff0c;透过【圆柱】看到【红色的方块】 三、实现原理-Shader 借助shader&#xff0c;两个挂有特殊shader的物体&#xff0c;当他们在视线里重叠的时候&#xff0c;重叠的部分变成透明。 …

Android NDK开发入门

目录 1. 创建 C 代码2. 定义 JNI 接口3. 在 Java 中声明本地方法4. 创建 CMakeLists.txt 文件5. 配置 build.gradle6. 编译和运行7.项目结构8.总结 在 Android 开发中&#xff0c;编写 JNI (Java Native Interface) 接口使得应用层能够调用 C 代码&#xff0c;涉及到几个步骤&a…

光流运动估计教程

文章目录 概要什么是光流?稀疏光流与密集光流实现稀疏光流1. 设置环境2.配置OpenCV读取视频并设置参数3. Grayscaling 3. 灰度化4. Shi-Tomasi 角点检测器 – 选择要跟踪的像素5. Lucas-Kanade:稀疏光流6. 可视化实现密集光流1. 设置环境2. 配置 OpenCV 读取视频3. 灰度4. Fa…

从力扣中等+困难题+表白HTML测试 -- 文心快码(Baidu Comate)

0 写在前面 官网地址&#xff1a;Baidu Comate Step1 打开文心快码&#xff08;Baidu Comate&#xff09;官网&#xff0c;点击「免费使用」/「下载安装」 Step2 可以根据官网步骤快速唤起VS Code&#xff1b; 也可以直接在VS Code、Visual Studio扩展管理搜索“文心快码”/…

Xshell 连接服务器

Xshell 连接服务器 安装 Xshell7 天免费试用永久免费试用 连接服务器 安装 Xshell 双击运行安装程序 点击 下一步 同意用户协议&#xff0c; 点击下一步 选择安装位置&#xff0c; 点击下一步 设置程序文件夹名&#xff0c; 点击安装 等待软件安装完毕 ## 软件激活 7 天免费试…

怎样在线免费音频转文字?放心交给这4款音频转文字能手

从会议记录到个人笔记&#xff0c;从播客到讲座录音&#xff0c;大家是否有考虑过如何将这些宝贵的音频信息快速转化为文字&#xff0c;以便更好地保存、分享和分析呢&#xff1f;其实我这倒是有一个不错的解决方案&#xff0c;那便是利用音频转文字软件免费来进行转换~ 想知道…

安全课堂开课了,不容小觑的暗水印来啦!数据防泄密管理新趋势——添加暗水印!

数据泄露的风险日益加剧&#xff0c;为了有效保护企业的敏感信息&#xff0c;防止数据被非法复制、传播或泄露&#xff0c;一种名为“暗水印”的技术逐渐走进了企业的视野&#xff0c;并成为了数据防泄密管理的新趋势。 今天&#xff0c;我们就来深入探讨一下这一不容忽视的技…

BurpSuite

如果只能用一个Web渗透工具&#xff0c;我选BurpSuite。 Web应用程序&#xff08;Web Application&#xff09; 不同于传统的静态网站所有程序的特点是接收、处理用户输入并返回结果服务器端是个程序&#xff0c;需要程序代码实现业务功能&#xff08;java、php、asp.nse&…

智慧社区新视界:EasyCVR视频汇聚平台下的数字化治理实践

在当今科技飞速发展的时代&#xff0c;“数字城市智慧社区”这个概念正逐渐走进我们的生活。那么&#xff0c;数字城市智慧社区到底是什么样子的呢&#xff1f; 随着城市化的不断推进&#xff0c;数字城市建设已成为提升城市管理效率、改善居民生活质量的重要手段。智慧社区作…

简单回归模型建立(下)

目录 数据准备 特征选择 目标变量 模型选择 示例代码 ​编辑分析结果 上部分对数据进行了分析以及可视化 选择不同的目标变量&#xff0c;例如“Cost of Living Index”作为我们要预测的目标。然后&#xff0c;我们可以使用其他相关的指标作为特征来训练模型。例如&…

邮件系统安全管家:CACTER SMC2的全面升级

根据Coremail邮件安全人工智能实验室监测&#xff0c;2024年Q2全国企业级用户遭受超过21.4亿次暴力破解&#xff0c;相比于Q1的39.1亿次暴力破解&#xff0c;环比降幅约为45%&#xff0c;无差别的暴力破解攻击大幅下降&#xff0c;但数据显示暴力破解攻击成功次数正在回升。 20…