Docker 入门使用说明

news2024/9/27 5:41:34

Docker 入门使用说明

Docker 安装

Docker 官网:Docker

Docker 安装说明:Docker 安装说明

这里由于 Docker 在实时更新,所以每次安装 Docker 用来导入 key 的链接可能会有变化,这里就参考官方的安装方法即可

Docker 常用命令说明

基础操作

查询镜像:

docker search 要查询的镜像

这里会显示所有当前镜像的版本和网友封装的版本

拉取镜像:

docker pull 镜像名称:版本号

创建镜像:

docker create 镜像名称:版本号

当我们没有当前镜像,docker 就会自动把镜像下载到本地

查看本地容器镜像:

docker image ls

这里会显示我们本地所有的镜像

运行镜像:

docker run --name 名称 系统:版本号

这样就运行了一个镜像,但是我们发现我们并没有进入到协同命令行中

docker run --name 名称 -it 系统:版本号

这样我们就在运行 docker 镜像的同时,进入到了命令行下

查看当前所有容器的列表

docker ps -a

这将显示所有容器的列表,包括已停止的容器。从列表中,我们可以找到我们想要运行的容器的 ID 和名称

启动已有容器

docker start <容器ID/名称>

请确保将 <容器ID/名称> 替换为你要启动的容器的实际 ID 或名称

连接到正在运行的容器

docker attach <容器ID/名称>

这将连接到正在运行的容器,并将终端输入和输出重定向到容器中,这意味着你可以在容器中执行命令和操作

关闭运行的镜像:

docker stop <容器ID/名称>

删除指定容器

docker rm <容器ID/名称>

Docker 全部关闭、全部重启、全部删除操作

启动所有容器

docker start $(docker ps -a | awk '{ print $1}' | tail -n +2)

重启所有容器

docker restart $(docker ps -a -q)

关闭所有容器

docker stop $(docker ps -a | awk '{ print $1}' | tail -n +2)

删除所有容器

docker rm $(docker ps -a | awk '{ print $1}' | tail -n +2)

删除所有镜像

docker rmi $(docker images | awk '{print $3}' |tail -n +2)

Docker 名称修改

使用 --name 选项重命名容器

docker run --name 我的容器 容器名称(自定义)

如果容器已经存在,可以使用 docker rename 命令来重命名容器:

docker rename old-container-name new-container-name

这将把名为 old-container-name 的容器重命名为 new-container-name

使用 docker-compose.yml 文件

如果您在运行多个 Docker 容器,例如作为一组服务,可以使用 docker-compose.yml 文件来命名它们。在这种情况下,您可以在 docker-compose.yml 文件中为每个容器指定一个名称,例如:

services:
	web:
		image: nginx
		container_name: my_nginx
	db:
		image: mysql
		container_name: my_mysql

这将创建两个容器:一个名为 my_nginx 的 NGINX 容器,另一个名为 my_mysql 的 MySQL 容器

使用 docker update 命令

如果您使用 docker-compose 来管理 Docker 服务,您可以使用以下命令来重命名服务(容器):

docker-compose rename old-service-name new-service-name

这将把名为 old-service-name 的服务/容器重命名为 new-service-name

Docker 文件处理

本地文件上传到指定容器中:

docker cp 本地文件路径 容器名称/id:容器文件路径

容器挂载本地文件夹:

docker run -it -v 本地目录:容器内目录 镜像:版本

使用上述命令,必须是新建容器

Docker 查看容器大小(内存与运行内存)

docker 查看容器占用磁盘大小
docker system df	# 查看总体占用
docker system df -v	# 查看每个 image、container 详细大小

使用 docker inspect 命令,该命令可以返回有关 Docker 对象(容器、镜像等)的详细信息,包括容器大小

docker inspect --format='{{.Size}}' <container_name_or_id>	# 这里就是通过查询容器配置信息的方式实现对容器大小的查询

查看容器磁盘空间占用:

docker ps -s
设置容器运行内存大小

这里通过 docker run 命令,使用 --memory 参数 和 --memory-swap 来设置容器的内存大小和交换内从大小:

docker run -d -name mu_container_name --memroy 1g --memory-swap 1g <image_name>

这里 --memory 设置的是容器的物理内存,–memory-swap 是虚拟内存既交换内存

容器内部查询

这里可以在容器内部,使用 Linux 命令,就像在 Linux 下一样即可

容器导入导出

#导出一个已经创建的容器导到一个文件
docker export -o 文件名.tar 容器id
#将文件导入为镜像
docker import 文件名.tar 镜像名:镜像标签

Docker 打包上传本地镜像

打包镜像(需要 Dockerfile)

构建好自己的镜像后,使用以下命令进行打包:

docker build -t <image_name>:<tag>

命令来创建一个本地标记为 <image_name> 的镜像。其中 : 表示版本号或者标签名称,. 表示当前目录。例如我的:

docker build -t risc64-unknown-elf:v1.0 .

这里如果末尾没有空格和点会报错:

ERROR: "docker buildx build" requires exactly 1 argument.

打包镜像(不需要 Dockerfile)

使用 docker commit 命令创建:

docker commit riscv64-unknown-elf risc64-unknown-elf:v1.0

上传镜像

这里选择上传的云端平台是 Docker Hub:

Docker Hub

如果没有账号需要事先进行注册,这里选择使用 github 账号登录即可

注册后我们需要创建一个仓库用来上传我们的镜像:

image

这里创建方式与 github 方式类似,这里我们进入库后,网站上详细介绍了如何进行上传和上传的链接等:

image

首先需要链接本地镜像与云端仓库:

# docker tag 本地镜像名:版本号 dockerhub用户名/仓库名:版本号
# 没有版本号默认latest
docker tag riscv64-unknown-elf:v1.0 ppqppl/risc64-unknown-elf:v1.0

最后我们就可以 push 我们本地的镜像了,这里注意,一定要保持本地网络畅通,不然上传到一半失败就要重新开始:

docker login
# 然后依次输入docker用户名,密码.
# push本地镜像到仓库
docker push ppqppl/risc64-unknown-elf:v1.0

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

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

相关文章

继承和多态(1)(继承部分)

继承 继承的概念 上文就是继承的概念。 必须记住父类也可以称为基类&#xff0c;超类。 子类也可以称为派生类。 继承的语法 在Java中如果要表示类之间的继承关系&#xff0c;需要借助extends关键字&#xff0c;具体如下&#xff1a; 修饰符 class 子类 extends 父类 {//…

网络核心知识点 - 网络通信技术 XHR(XMLHttpRequest) 和 Fetch

一、关于 AJAX&#xff08;一种思想和方法&#xff09; 浏览器本身就具备网络通信的能力&#xff0c;但在早期&#xff0c;浏览器并没有把这个能力开放给JS。最早是微软在IE浏览器中把这一能力向JS开放&#xff0c;让JS可以在代码中实现发送请求&#xff0c;并不会刷新页面。Aj…

python初级2条件与循环笔记

两个课堂小练习&#xff1a; 1、(计算圆柱体的体积) 编写一个读取圆柱的半径和高并利用公式计算圆柱体底面积和体积的程序 iimport math reval(input("enter the r")) heval(input("enter the h")) arear*r*math.pi print("the area ",area,…

python第三方库的安装,卸载和更新,以及在cmd下pip install安装的包在pycharm不可用问题的解决

目录 第三方库pip安装&#xff0c;卸载更新 1.安装&#xff1a; 2.卸载 3.更新 一、第三方库pip安装&#xff0c;卸载更新 1.安装 pip install 模块名 加镜像下载&#xff1a;pip install -i 镜像网址模块名 常用的是加清华镜像&#xff0c;如 pip install -i https://pyp…

nodejs+vue高校门诊管理系统python-flask-django-php

相比于以前的传统手工管理方式&#xff0c;智能化的管理方式可以大幅降低高校门诊的运营人员成本&#xff0c;实现了高校门诊管理的标准化、制度化、程序化的管理&#xff0c;有效地防止了高校门诊管理的随意管理&#xff0c;提高了信息的处理速度和精确度&#xff0c;能够及时…

DBA工作经验总结

目录 一、MySQL8.0创建一张规范的表 1.表、字段全采用小写 2.int类型不再加上最大显示宽度 3.每张表必须显式定义自增int类型的主键 4.建表时增加comment来描述字段和表的含义&#xff08;防止以后忘记&#xff09; 5.建议包含create_time和update_time字段 6.核心业务增…

[激光原理与应用-80]:PLC通信协议之-OMRON欧姆龙FINS TCP通信协议详细解析

目录 一、OMRON欧姆龙 PLC简介 1.1 OMRON欧姆龙 PLC 1.2 OMRON欧姆龙 PLC通信协议简介 1.3 通信架构 二、欧姆龙FINS协议简介 2.1 简介 2.2 协议分层 2.3 OMRON&#xff08;欧姆龙&#xff09;FINS协议的本质 2.4 OMRON&#xff08;欧姆龙&#xff09;FINS&#xff08…

sentinel中StatisticSlot数据采集的原理

StatisticSlot数据采集的原理 时间窗口 固定窗口 在固定的时间窗口内&#xff0c;可以允许固定数量的请求进入&#xff1b;超过数量就拒绝或者排队&#xff0c;等下一个时间段进入, 如下图 时间窗长度划分为1秒 单个时间窗的请求阈值为3 上述存在一个问题, 假如9:18:04:…

【ArcGIS微课1000例】0106:ArcGIS制作风向频率(风速)玫瑰图

文章目录 一、效果预览二、加载数据三、创建图表四、图表修饰五、保存图片一、效果预览 在ArcGIS制作的风向频率玫瑰图最终效果如下所示: 二、加载数据 加载配套实验数据包中0106.rar中的excel数据,然后右键→打开。 三、创建图表 1. 创建图表。右击打开属性表,选择表选项…

ETL数据倾斜与资源优化

1.数据倾斜实例 数据倾斜在MapReduce编程模型中比较常见&#xff0c;由于key值分布不均&#xff0c;大量的相同key被存储分配到一个分区里&#xff0c;出现只有少量的机器在计算&#xff0c;其他机器等待的情况。主要分为JOIN数据倾斜和GROUP BY数据倾斜。 1.1GROUP BY数据倾…

Web前端—浏览器渲染原理

浏览器渲染原理 浏览器渲染原理渲染时间点渲染流水线1. 解析HTML—Parse HTML2. 样式计算—Recalculate Style3. 布局—Layout4. 分层—Layer5. 绘制—Paint6. 分块—Tiling7. 光栅化—Raster8. 画—Draw完整过程 面试题1. 浏览器是如何渲染页面的&#xff1f;2. 什么是 reflow…

6.3 BP神经网络

在多层感知器被引入的同时&#xff0c;也引入了一个新的问题&#xff1a;由于隐藏层的预期输出并没有在训练样例中给出&#xff0c;隐藏层结点的误差无法像单层感知器那样直接计算得到。 为了解决这个问题&#xff0c;反向传播&#xff08;BP&#xff09;算法被引入&#xff0…

Spark DAG

Spark DAG 什么是DAG DAG 是一组顶点和边的组合。顶点代表了 RDD&#xff0c; 边代表了对 RDD 的一系列操作。 DAG Scheduler 会根据 RDD 的 transformation 动作&#xff0c;将 DAG 分为不同的 stage&#xff0c;每个 stage 中分为多个 task&#xff0c;这些 task 可以并行运…

jenkins介绍,帮助你从安装到使用jenkins

Jenkins 概述 官网地址&#xff1a;https://www.jenkins.io/zh/ 什么是 Jenkins Jenkins是一款开源 CI&CD 软件&#xff0c;用于自动化各种任务&#xff0c;包括构建、测试和部署软件。它提供了一个易于使用的图形化界面&#xff0c;可以通过配置简单的任务来实现自动化构…

ubuntu20.04安装 ffmpeg 开发环境

参考&#xff1a;参考1 一些相关软件包&#xff0c;已打包整理好&#xff0c;如下 源码包 1、安装步骤 创建安装目录 sudo mkdir -p /usr/local/ffmpeg/lib 解压源码 tar -jxf ffmpeg-4.3.2.tar.bz2 到指定ffmpeg目录进行配置 cd ffmpeg-4.3.2/ 配置&#xff1a;会报错很多…

简单使用Swagger

文章目录 1、介绍2、 使用步骤3、 常用注解 1、介绍 Swagger 是一个规范和完整的框架&#xff0c;用于生成、描述、调用和可视化 RESTful 风格的 Web 服务(https://swagger.io/)。 它的主要作用是&#xff1a; 使得前后端分离开发更加方便&#xff0c;有利于团队协作 接口的文…

银行监管报送系统介绍(五):金融统计数据大集中自动化报送系统——PBOC Report

人民银行金融统计数据大集中自动化报送系统&#xff08;简称PBOC Report&#xff09;&#xff0c;是基于现代计算机网络技术应用基础上&#xff0c;由人行总行设置金融统计数据服务器&#xff0c;建立的一个全国统一的金融统计数据库。 人行针对各银行存贷款、中间业务、网点人…

关闭 Microsoft Word 2010 配置窗口

关闭 Microsoft Word 2010 配置窗口 References 出现这种问题&#xff0c;主要是安装时所用账户和目前登陆的账户不为同一个账户造成的。或者你进行过覆盖安装或是重新安装过系统&#xff0c;但是 office 的安装目录没有更改。先激活 Microsoft Office&#xff0c;然后执行下列…

如何使用OpenCV扫描图像、查找表和时间测量

返回&#xff1a;OpenCV系列文章目录&#xff08;持续更新中......&#xff09; 上一篇&#xff1a;OpenCV4.9.0开源计算机视觉库核心功能&#xff08;核心模块&#xff09; ​ 编辑 目标 我们将寻求以下问题的答案&#xff1a; 如何浏览图像的每个像素&#xff1f;OpenCV 矩…

【前端Vue】HR-saas中台项目开发md文档第1篇:vuex基础-介绍,vuex基础-初始化功能【附代码文档】

HR-saas中台管理项目开发完整教程&#xff08;附代码资料&#xff09;主要内容讲述&#xff1a;vuex基础-介绍,vuex基础-初始化功能,vuex基础-state,vuex基础-mutations,vuex基础-actions,vuex基础-getters。项目课设计&#xff0c;人力资源的环境搭建vue-element-admin的了解和…