Docker在linux系统中的下载与使用

news2024/10/10 0:16:08

Docker在linux系统中的下载与使用

  • 一、docker作用,下载及安装
  • 二、docker镜像
  • 三、创建容器
  • 四、容器数据卷

一、docker作用,下载及安装

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在这里插入图片描述

在这里插入图片描述

  1. ubuntu下载安装docker 命令:在ubuntu上面执行这个命令

在这里插入图片描述

  1. Docker version:查看docker是否安装成功

在这里插入图片描述

在这里插入图片描述

  1. 配置阿里云镜像加速:进入阿里云网站找到对应的容器镜像加速服务

在这里插入图片描述

  1. 根据操作文档中的步骤,复制搭配命令行执行即可,如在ubuntu中执行的命令

在这里插入图片描述

  1. Docker info可以查看docker 对应的信息

在这里插入图片描述

二、docker镜像

Docker run:根据镜像创建容器;

Docker run --help:查看docker run 命令的相关操作

Docker images:查看所有镜像文件

Docker images --help:查看docker images对应的操作

在这里插入图片描述

Docker search:本地没有镜像,查看线上仓库有没有镜像,如docker search mysql。或者进入docker hub网站查看有没有这个镜像。

搜索点赞数大于3000的mysql

在这里插入图片描述

Docker pull mysql:下载拉取镜像,如果不写tag,默认下载最新的版本

在这里插入图片描述

指定版本下载。已经拉取的部分就不会重复再拉取,只会把不存在的文件下载下来:docker的分层下载

在这里插入图片描述

Docker rmi -f 镜像id:可以通过名字或者id来进行删除操作,如果名字重复,可通过id进行删除。删除的只是最新版本的mysql有的,对与mysql5.7版本公共的部分不会删除

在这里插入图片描述

Docker rmi -f docker images -aq:删除所有的镜像。-a所有的; -q只显示id

在这里插入图片描述

三、创建容器

在这里插入图片描述

–name:指定容器名称

-d:后台方式运行,给别人提供服务的才需要加上,如mysql,ngix ;而ubuntu就不需要加

-i:交互式操作

-t:终端 -i和-t一般写在一起,如果需要使用到终端命令,则要加上-it,如ubuntu要进入到容器当中,对其进行对应的命令操作,要加上-it

-p:指定容器的端口

如:1f6ddc1b2547:最好用镜像id来指定, /bin/bash:指明用的是哪一个脚本

docker run -it 1f6ddc1b2547 /bin/bash

执行后,进入到了容器对应的计算机

在这里插入图片描述

windows同理:与virtualbox中的ubuntu系统一样,但是使用docker可以快速部署ubuntu系统

在这里插入图片描述

exit退出容器,会把容器关掉

在这里插入图片描述

Docker ps -a:查看所有的容器,包括关闭的容器

Dockers rm -f docker ps -aq:删除所有的容器

在这里插入图片描述

给容器取名字

在这里插入图片描述

Docker ps -n=1:查看最近创建的一个容器,数字可以自己定义

在这里插入图片描述

Docker start ubuntu01:启动已经创建好的容器,后接容器名或容器ID

在这里插入图片描述

Docker restart ubuntu01:重启容器

Docker stop ubuntu01:停止容器,但是内存还在,不会释放

Docker kill ubuntu01:终止进程,释放内存




启动容器并进入容器:

方法一:

docker start ubuntu01

Docker attach ubuntu01:进入容器(针对已创建的容器,如果是刚创建的容器docker run 就会进入),exit退出后,容器就会停止

在这里插入图片描述

方法二:

Docker start ubuntu01

Docker exec -it ubuntu01 /bin/bash:-it进入交互式终端,后面可以接容器名容器id,/bin/bash表示使用的终端。exit退出后容器不会关闭

在这里插入图片描述

Docker top ubuntu01:查看容器进程

在这里插入图片描述


容器之间的文件上传与下载:

  1. 将容器文件拷贝到本机:
    1)首先进入ubuntu容器,cd+空格进入root的家目录
    外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
    Pwd可以查看当前目录
    在这里插入图片描述
    2)创建一个test.py文件,然后exit退出
    在这里插入图片描述
    3)Docker cp ubuntu01:/root/test.py D:/Backup:复制root目录下的test.py文件到本机D:/Backup。Docker cp +容器名:要复制的文件 + 复制到的指定路径
    在这里插入图片描述

  2. 将本机文件拷贝到容器
    1)docker cp D:\Backup\test2.py ubuntu01:/root :将D:\Backup下的test2.py文件复制到ubuntu01容器下的root目录
    在这里插入图片描述

四、容器数据卷

把数据进行持久化,存储到本地,容器删除后,但是数据还在。挂载:把容器的目录挂载到本地的某个目录进行数据共享
在这里插入图片描述

  1. 在本机创建对应的文件夹,用来挂载。
    在这里插入图片描述

-it:交互式终端

–name+容器名

-v 进行挂载:本机挂载目录:容器目录 镜像名或镜像ID 使用的终端

在这里插入图片描述

  1. 创建一个test.py文件
    在这里插入图片描述
    Exit退出后,可在本机查看到test.py文件
    在这里插入图片描述
    在本机修改test.py文件后,在容器内部查看,文件内容也是同步修改
    在这里插入图片描述

  2. 删除容器后重新创建
    删除
    在这里插入图片描述
    重新创建一个容器,只需要重新挂载这个目录即可。原来的文件还是存在
    在这里插入图片描述

Docker inspect ubuntu02:获取元数据,可以在Mounts参数下查看到挂载的路径等信息

挂载类型有以下几种:

上面使用的方法是指定路径挂载

具名挂载:只需要指定卷名,会自动创建一个文件夹作为容器挂载目录,文件夹名即卷名

匿名挂载:挂载文件路径是随机的

在这里插入图片描述

实操:一个项目需要使用两个mysql服务器,本机已有一个mysql服务器,使用docker构建出第二台mysql服务器。Docker run 去创建:本地有镜像就直接用,没有就拉取,不用docker search 和docker pull 去拉取了。

Mysql对外提供数据库服务,所以使用-dit

-p 3316:3306 进行端口映射,把容器的3306端口映射为本机的3316端口

-v D:\docker\mysql01\conf:/etc/mysql/conf.d:挂载容器/etc/mysql/conf.d中的配置文件到本机的conf文件夹下

-v D:\docker\mysql01\data:/var/lib/mysql:对数据进行挂载

-e:环境配置。MYSQL_ROOT_PASSWORD=qwe123设置密码

最后接镜像名:可指定版本

在这里插入图片描述

进入mysql

在这里插入图片描述

2G内存单核cpu大概能同时开启二三十个docker容器

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

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

相关文章

阿里140滑块-滑块验证码逆向分析思路学习

一、声明! 原创文章,请勿转载! 本文内容仅限于安全研究,不公开具体源码。维护网络安全,人人有责。 文章中所有内容仅供学习交流使用,不用于其他任何目的,均已做脱敏处…

JUC高并发编程8:读写锁

1 概述 1.1 悲观锁和乐观锁 在并发编程中,锁机制是用来控制多个线程对共享资源的访问。悲观锁和乐观锁是两种不同的并发控制策略。 1.1.1 悲观锁(Pessimistic Locking) 悲观锁假设在最坏的情况下,多个线程会同时访问和修改共享…

Qt-QDockWidget浮动窗口相关操作(49)

目录 描述 使用 描述 在 Qt 中,浮动窗⼝也称之为铆接部件。浮动窗⼝是通过 QDockWidget类 来实现浮动的功能。浮动窗口⼀般是位于核心部件的周围,可以有多个。 使用 创建我们可以参考下面的语法格式 使用起来也很简单,不过只能创建一个 Q…

【C语言】使用结构体实现位段

文章目录 一、什么是位段二、位段的内存分配1.位段内存分配规则练习1练习2 三、位段的跨平台问题四、位段的应用五、位段使用的注意事项 一、什么是位段 在上一节中我们讲解了结构体,而位段的声明和结构是类似的,它们有两个不同之处,如下&…

创建osd加入集群

故障原因:ceph节点一个磁盘损坏,其中osd69 down了,需要更换磁盘并重新创建osd加入ceph集群。 信息采集: 更换磁盘前,查询osd69对应的盘符: 将对应的故障磁盘更换后,并重做raid,然后查…

SDK4(note下)

以下代码涉及到了很多消息的处理&#xff0c;有些部分注释掉了&#xff0c;主要看代码 #include <windows.h> #include<tchar.h> #include <stdio.h> #include <strsafe.h> #include <string> #define IDM_OPEN 102 /*鼠标消息 * 键盘消息 * On…

76.【C语言】perror函数介绍

1.cplusplus的官网介绍 cplusplus的介绍 点我跳转 2.翻译 函数 perror void perror ( const char * str ); 打印错误信息 将errno(最后一个错误数字)的值解释为错误信息,之后把它打印到stderr中(标准错误输出流,通常是控制台)(备注有关"流"的概念在75.【C语言】文件…

k8s-pod的管理及优化设置

Pod是Kubernetes&#xff08;k8s&#xff09;中最小的资源管理组件&#xff0c;也是最小化运行容器化应用的资源对象。以下是对Pod的详细介绍&#xff1a; 一、Pod的基本概念 定义&#xff1a;Pod是Kubernetes中可以创建和管理的最小单元&#xff0c;是资源对象模型中由用户创…

网站排名,让网站快速有排名的几个方法

要让网站快速获得并提升排名&#xff0c;需要综合运用一系列专业策略和技术&#xff0c;这些策略涵盖了内容优化、技术调整、外链建设、用户体验提升等多个方面。以下是让网站快速有排名的几个方法&#xff1a; 1.内容为王&#xff1a;创造高质量、有价值的内容 -深入…

geolocator插件的用法

文章目录 1. 概念介绍2. 使用方法3. 示例代码4 体验分享我们在上一章回中介绍了如何实现滑动菜单相关的内容,本章回中将介绍如何获取位置信息.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 我们在这里说的获取位置信息本质上是获取当前手机所在位置的gps坐标,就是我们…

【Chrome浏览器插件--资源嗅探猫抓】

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 一、资源嗅探插件---猫抓二、使用步骤总结 一、资源嗅探插件—猫抓 猫抓是一个浏览器插件&#xff0c;可以检测当前网页中的一些资源文件&#xff0c;可设置嗅探的…

NVIDIA机密计算文档

NVIDIA 可信计算解决方案 文章目录 前言一、指南1. Intel TDX - 机密计算部署指南2. AMD SNP - 机密计算部署指南3. NVIDIA Hopper 机密计算证明文档4. nvtrust GitHub二、发行说明1. 550TRD3 - NVIDIA 可信计算解决方案发行说明2. 550TRD1 - NVIDIA 可信计算解决方案发行说明三…

The Android SDK location cannot be at the filesystem root

win11&#xff0c; 安装启动完Android Studio后&#xff0c;一直显示 The Android SDK location cannot be at the filesystem root因此需要下载SDK包&#xff0c;必须开启代理。 开启代理后&#xff0c;在System下开启自动检测代理&#xff0c;如图 重启Android Studio&a…

任务【浦语提示词工程实践】

0.1 环境配置 首先点击左上角图标&#xff0c;打开Terminal&#xff0c;运行如下脚本创建虚拟环境&#xff1a; # 创建虚拟环境 conda create -n langgpt python3.10 -y 运行下面的命令&#xff0c;激活虚拟环境&#xff1a; conda activate langgpt 之后的操作都要在这个环境…

基于LORA的一主多从监测系统_0.96OLED

关联&#xff1a;0.96OLED hal硬件I2C LORA 在本项目中每个节点都使用oled来显示采集到的数据以及节点状态&#xff0c;OLED使用I2C接口与STM32连接&#xff0c;这个屏幕内部驱动IC为SSD1306&#xff0c;SSD1306作为从机地址为0x78 发送数据&#xff1a;起始…

Windows环境安装CentOS7

【注意】安装CentOS需要先安装Vmware虚拟机 【下载前准备】 一、下载CentOS 7镜像文件阿里云镜像开源&#xff0c;点击跳转 二、安装VMware&#xff08;17&#xff09;&#xff1a; a. 官网&#xff0c;点击跳转 b. 许可证&#xff1a;JU090-6039P-08409-8J0QH-2YR7F 安装V…

Aegisub字幕自动化及函数篇(图文教程附有gif动图展示)(二)

目录 template行 template pre-line template line template syl template syl noblank template char template notext template pre-line notext template syl noblank notext template keeptags ​编辑 template loop number 内联变量 ​编辑 remeber函数 re…

提示工程、微调和 RAG

自众多大型语言模型&#xff08;LLM&#xff09;和高级对话模型发布以来&#xff0c;人们已经运用了各种技术来从这些 AI 系统中提取所需的输出。其中一些方法会改变模型的行为来更好地贴近我们的期望&#xff0c;而另一些方法则侧重于增强我们查询 LLM 的方式&#xff0c;以提…

【华为OD机试真题】95、最少面试官数

package mainimport ("fmt""sort" )type s struct {start intend intworkCount int }type duration struct {start intend int }// 查询时间段内是否有可用的面试官 func getFreeS(sList []*s, d *duration, workCountLimit int) (sIndex int)…

CanOpen转Profinet网关与钢成型机等机械集成时发挥的作用

在现代工业自动化领域&#xff0c;不同设备和系统之间的通信至关重要。CanOpen和Profinet是两种广泛应用于工业控制系统的通讯协议。CanOpen通常用于设备级别的通信&#xff0c;而Profinet则更常见于工业以太网&#xff0c;适用于更大范围的系统级控制。当型钢成型机等复杂机械…