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

云原生-docker安装与基础操作

一、云原生 Docker 介绍

Docker 在云原生中的优势

二、docker的安装

三、docker的基础命令

1. docker pull(拉取镜像)

2. docker images(查看本地镜像)

3. docker run(创建并启动容器)

4. docker ps(显示容器)

5. docker start(启动容器)

6. docker exec(交互模式进入容器)

7. 退出容器

8. docker stop(停止容器)

8. docker restart(重启容器)

9. docker rm(删除容器)

10. 其余杂项

10.1. 查看容器日志

10.2. 查看容器网络

10.3. 查看docker卷

10.4. 显示 Docker 系统的详细信息

10.5. 显示 Docker 的版本信息

结语


学习视频泷羽sec:

黑客云技术基础之(网恋避险)_哔哩哔哩_bilibili《中华人民共和国刑法》第二百八十六条【破坏计算机信息系统罪;网络服务渎职罪】违反国家规定,对计算机信息系统功能进行删除、修改、增加、干扰,造成计算机信息系统不能正常运行,后果严重的,处五年以下有期徒刑或者拘役;后果特别严重的,处五年以上有期徒刑。违反国家规定,对计算机信息系统中存储、处理或者传输的数据和应用程序进行删除、修改、增加的操作,后果严重的,依照前款的规定处罚。故意制作、传播计算机病毒等破, 视频播放量 671、弹幕量 1、点赞数 47、投硬币枚数 63、收藏人数 39、转发人数 4, 视频作者 泷羽sec, 作者简介 泷羽 Sec 安全团队v:cc8888ddosv:yxy350488承接:安全测评,小程序/web应用的渗透测试 网络安全 红队攻城 ,相关视频:【从入门到入狱】暗网黑客教程1300集,全程干货无废话!只要你敢学我就敢教!网络安全|kali破解|web安全|渗透测试+学习笔记+零基础入门网络安全,windows基础(1),审核下架66次,终于上传成功的暗网黑客技术教程!整整500集,从入门到精通,手把手教你零基础入门网络安全/渗透测试/内网渗透/黑客技术,蓝队基础之网络七层杀伤链,审核失败34次,学不会我退出网安圈!中国红客技术正需要传人!全套1000集还担心学不会?(,【判刑率99.9】只要你敢学我就敢教,学完渗透黄色赌博网站,从入门到入狱!学不会我退出网络安全圈!,给我五分钟夺走你女神的所有信息,真实可拷手把手教你暗网黑客技术(仅供网络安全教学),【从入门到入狱】暗网黑客教程1300集,全程干货无废话!只要你敢学我就敢教!网络安全|kali破解|web安全|渗透测试+学习笔记+零基础入门网络安全,【判刑率99.9%】500集暗网黑客技术教程,学完之后渗透颜色赌博网站,只要你敢学我就敢教,零基础学习网络安全/渗透测试技术,【小迪安全】全栈网络安全 | 红蓝对抗 | 高级渗透测试 V2024最新版 (完)icon-default.png?t=O83Ahttps://www.bilibili.com/video/BV1BtD6YCEgA/?spm_id_from=333.1007.top_right_bar_window_history.content.click


一、云原生 Docker 介绍

"云原生"(Cloud Native)是指一类在云环境中构建、部署和运行应用程序的方法论和技术栈,它主要包括容器化、微服务、动态管理、持续集成和交付等特性。Docker 是实现云原生应用的一项核心技术,它是一个开源的应用容器化平台,允许开发者将应用及其所有依赖打包成一个标准化的容器镜像,从而简化应用的部署和管理。

Docker 在云原生中的优势

  • 微服务架构:云原生应用倾向于拆分成多个小的、独立的服务,每个服务可以独立开发、部署和扩展。Docker 容器为微服务的实现提供了理想的基础架构,因为它能够在多个容器中运行不同的服务,并且确保服务的环境一致性。

  • 一致性与可移植性:Docker 容器确保应用程序在开发、测试、生产等各个环境中都能够一致运行,减少了环境不一致带来的问题。无论是在本地开发机器还是在云环境中,Docker 容器都能保证一致的行为。

  • 资源隔离:每个 Docker 容器都是相互隔离的,能够确保不同应用之间的相互干扰最小化。同时,Docker 提供了资源限制(如 CPU、内存等),有助于提高资源的利用率和管理。

  • 高效性:Docker 容器比传统的虚拟机(VM)更为轻量,因为它们共享操作系统内核,而不需要模拟完整的硬件环境。这使得容器启动速度更快、占用资源更少。

  • 弹性扩展:Docker 和 Kubernetes 等编排工具使得云原生应用能够根据需求进行弹性扩展。Kubernetes 可以自动调整容器的数量以适应负载的变化,从而确保系统的高可用性和稳定性。

简单来说Docker 是实现云原生架构的核心技术之一,它通过提供容器化的解决方案,使得应用能够在不同的环境中一致运行,并支持高效的部署和管理。结合 Kubernetes 等工具,Docker 可以帮助开发者构建、部署和管理微服务应用,充分发挥云原生技术的优势,提升应用的灵活性、可扩展性和高可用性。

docker让服务不再特别依赖环境,可以直接搭建一个或多个环境,并且正常使用。多个环境还互相隔离相互不影响。


二、docker的安装

这是kali的安装方法一条一条输入就可以了,也可以全选复制直接粘贴

遇到选项全部回车,启动状态正常和sudo docker -v可以打印出版本号就没有问题

#安装https协议、CA证书、dirmngr
sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates
sudo apt-get install dirmngr#添加GPG密钥并添加更新源
sudo curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/gpg | sudo apt-key add -
sudo echo 'deb [arch=amd64] https://download.docker.com/linux/debian rolling stable' | sudo tee /etc/apt/sources.list.d/docker.list#更新软件包并安装docker
sudo apt-get update
sudo apt-get install docker.io
​
#启动docker服务器
sudo service docker start
​
#安装compose
sudo apt install docker-compose#配置镜像源
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://5tqw56kt.mirror.aliyuncs.com","https://dockerhpcloud.cloud","https://docker.m.daocloud.io","https://docker.1panel.live","http://mirrors.ustc.edu.cn","https://docker.chenby.cn","https://docker.ckyl.me","http://mirror.azure.cn","https://hub.rat.dev"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
sudo systemctl status docker --no-pager
sudo docker -v


三、docker的基础命令

本章节重点写增删改查这种基础命令,其余的进阶后期章节有可能会讲,到时候会更偏向于安全领域而不是使用。

1. docker pull(拉取镜像)

docker pull [OPTIONS] NAME[:TAG|@DIGEST]

从 Docker Hub 或其他 Docker 镜像仓库拉取镜像。

示例:

#拉取centos7的Docker镜像。
docker pull centos:7

从 Docker Hub 拉取最新的centos7 镜像。

2. docker images(查看本地镜像)

docker images [OPTIONS] [REPOSITORY[:TAG]]

列出本地存储的所有 Docker 镜像。

常用选项:

  • -a:显示所有镜像,包括中间镜像层。

  • -q:仅显示镜像的 ID。

示例:

docker images

3. docker run(创建并启动容器)

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

用于创建并启动一个新的容器实例,执行一个命令。是最常用的命令之一。

  • IMAGE:要运行的镜像名。如果镜像不存在,Docker 会自动从 Docker Hub 拉取该镜像。

  • COMMAND:容器启动后执行的命令。如果不指定命令,Docker 会执行镜像中定义的默认命令。

常用选项:

  • -d:以后台模式运行容器(即 detached 模式)。

  • -p:端口映射。例如,-p 8080:80 将容器的 80 端口映射到主机的 8080 端口。

  • -v:挂载卷,将本地目录或文件挂载到容器中。

  • --name:为容器指定一个名称。

  • --rm:容器停止后自动删除容器。

示例:

docker run -it --name my_centos7 centos:7 /bin/bash

这个命令会在后台启动一个基于 centos7镜像的容器,将容器的 80 端口映射到主机的 8080 端口,并将容器命名为my_centos7可以用exit退出。

4. docker ps(显示容器)

docker ps [OPTIONS]

显示当前正在运行的容器列表。

常用选项:

  • -a:显示所有容器,包括停止的容器。

  • -q:仅显示容器的 ID。

  • --format:以自定义格式显示信息。

示例:

docker ps -a

显示所有容器,包括已停止的容器。

5. docker start(启动容器)

docker start [OPTIONS] CONTAINER [CONTAINER...]

启动一个或多个已停止的容器。

示例:

docker start my_centos7

启动名为 my_centos7 的容器。

STATUS状态显示已经启动

6. docker exec(交互模式进入容器)

docker exec [OPTIONS] CONTAINER COMMAND [ARG...]

在运行中的容器内执行一个命令。

常用选项:

  • -it:以交互模式(interactive)和终端(tty)启动容器命令,通常用于进入容器的 shell。

示例:

docker exec -it my_centos7 /bin/bash

进入名为 my_centos7 的容器,并启动 /bin/bash 终端。

7. 退出容器

exitCtrl + D,退出后容器继续运行。

8. docker stop(停止容器)

docker stop [OPTIONS] CONTAINER [CONTAINER...]

停止一个或多个正在运行的容器。

  • CONTAINER:容器的 ID 或名称。

示例:

docker stop my_centos7

停止名为 my_centos7 的容器。

8. docker restart(重启容器)

docker restart [OPTIONS] CONTAINER [CONTAINER...]

重启一个或多个容器。

示例:

docker restart my_centos7

重启名为 my_centos7 的容器。

9. docker rm(删除容器)

docker rm [OPTIONS] CONTAINER [CONTAINER...]

删除一个或多个容器。只有停止的容器才能被删除。

常用选项:

  • -f:强制删除运行中的容器。

  • -v:同时删除容器相关的卷。

示例:

docker rm my_centos7

删除名为 my_centos7 的容器,只有停止的容器才能被删除。

10. 其余杂项

10.1. 查看容器日志
docker logs [OPTIONS] CONTAINER

查看容器的日志输出。

常用选项:

  • -f:实时查看日志。

  • --tail:显示日志的最后几行。

示例:

docker logs -f my_centos7

实时查看名为 my_centos7 容器的日志。

10.2. 查看容器网络
docker network COMMAND

管理 Docker 网络。常用命令包括 docker network ls(列出所有网络)、docker network create(创建网络)、docker network inspect(查看网络详情)等。

示例:

docker network ls

列出所有 Docker 网络。

10.3. 查看docker卷
docker volume COMMAND

管理 Docker 卷。常用命令包括 docker volume ls(列出所有卷)、docker volume create(创建卷)、docker volume inspect(查看卷的详细信息)等。

示例:

docker volume ls

列出所有 Docker 卷。

10.4. 显示 Docker 系统的详细信息
docker info

显示 Docker 系统的详细信息,包括容器、镜像、存储驱动、操作系统等信息。

10.5. 显示 Docker 的版本信息
docker version

显示 Docker 的版本信息,包括客户端和服务器端的版本。

结语

Docker 是实现云原生架构的核心技术之一,它通过提供容器化的解决方案,使得应用能够在不同的环境中一致运行,并支持高效的部署和管理。结合 Kubernetes 等工具,Docker 可以帮助开发者构建、部署和管理微服务应用,充分发挥云原生技术的优势,提升应用的灵活性、可扩展性和高可用性。

相关文章:

云原生-docker安装与基础操作

一、云原生 Docker 介绍 Docker 在云原生中的优势 二、docker的安装 三、docker的基础命令 1. docker pull&#xff08;拉取镜像&#xff09; 2. docker images&#xff08;查看本地镜像&#xff09; 3. docker run&#xff08;创建并启动容器&#xff09; 4. docker ps…...

MySQL数据库:SQL语言入门 【上】(学习笔记)

SQL&#xff08;Structured Query Language&#xff09;是结构化查询语言的简称&#xff0c;它是一种数据库查询和程序设计语言&#xff0c;同时也是目前使用最广泛的关系型数据库操作语言。&#xff08;95%适用于所有关系型数据库&#xff09; 【 SQL是关系型数据库通用的操作…...

重学 Android 自定义 View 系列(六):环形进度条

目标 自定义一个环形进度条&#xff0c;可以自定义其最大值、当前进度、背景色、进度色&#xff0c;宽度等信息。 最终效果如下&#xff08;GIF展示纯色有点问题&#xff09;&#xff1a; 1. 结构分析 背景圆环&#xff1a;表示进度条的背景。进度圆环&#xff1a;表示当前…...

nodejs 020: React语法规则 props和state

props和state 在 React 中&#xff0c;props 和 state 是管理数据流的两种核心机制。理解它们之间的区别和用途是构建 React 应用程序的基础。 一、props 和 state的区别 特性propsstate定义方式由父组件传递给子组件的数据组件内部管理的本地数据是否可修改不可变&#xff…...

STM32问题集

这里写目录标题 一、烧录1、 Can not connect to target!【ST-LINK烧录】 一、烧录 1、 Can not connect to target!【ST-LINK烧录】 烧录突然 If the target is in low power mode, please enable “Debug in Low Power mode” option from Target->settings menu 然后就&…...

SwiftUI(十二)- 容器组件 布局与结构的基石

引言 在用户界面开发中&#xff0c;布局是设计一个应用程序的视觉层次和交互体验的核心之一。无论是设计简单的按钮排布&#xff0c;还是复杂的多层次页面&#xff0c;合理的布局和结构可以极大地提升用户体验。而容器组件&#xff0c;作为将多个视图整合、组织、排列的工具&a…...

想租用显卡训练自己的网络?AutoDL保姆级使用教程(PyCharm版)

各位小伙伴们大家好~ 不知道各位同学在科研过程中是否有这样的苦恼 电脑无显卡。难不成我要用CPU跑实验吗&#xff1f;救救我吧电脑显卡算力太低。训练过程慢慢慢慢慢&#xff0c;等半天都出不来结果电脑显卡显存不够&#xff0c;batchsize稍微高一点点&#xff0c;就要爆显存…...

LeetCode【0039】组合总和

本文目录 1 中文题目2 求解方法&#xff1a;回溯法2.1 方法思路2.2 Python代码2.3 复杂度分析 3 题目总结 1 中文题目 给定一个 无重复元素 的整数数组 candidates 和一个目标整数 target &#xff0c;找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 &#…...

AscendC从入门到精通系列(一)初步感知AscendC

1 什么是AscendC Ascend C是CANN针对算子开发场景推出的编程语言&#xff0c;原生支持C和C标准规范&#xff0c;兼具开发效率和运行性能。基于Ascend C编写的算子程序&#xff0c;通过编译器编译和运行时调度&#xff0c;运行在昇腾AI处理器上。使用Ascend C&#xff0c;开发者…...

PostgreSQL中的COPY命令:高效数据导入与导出

在PostgreSQL数据库中&#xff0c;数据导入和导出是日常工作中常见的操作。传统的插入&#xff08;INSERT&#xff09;方法虽然可以实现数据的导入&#xff0c;但在处理大量数据时效率较低。而COPY命令则提供了一个快速、高效的方式来完成这一任务。COPY命令不仅可以用于将数据…...

【HAL库】STM32F105VCTx多通道ADC+DMA方式的【STM32CubeMX】配置及代码实现

相关代码编写 配置好后点击生成代码&#xff0c;在生成代码的adc.c文件中的初始化函数MX_ADC1_Init中添加如下代码&#xff1a; HAL_ADCEx_Calibration_Start(&hadc1); /* 校准ADC */HAL_ADC_Start_DMA(&hadc1,(uint32_t*)ADC_Value,ADC_DMA_…...

[SaaS] 数禾科技 AIGC生成营销素材

https://zhuanlan.zhihu.com/p/923637935https://zhuanlan.zhihu.com/p/923637935...

vue3中查找字典列表中某个元素的值对应的列表索引值

vue3中查找字典列表中某个元素的值对应的列表索引值 目录思路方法代码实现示例解释说明 目录 思路方法 要获取字典列表中某个元素的值对应的列表索引值&#xff0c;可以使用数组的 findIndex 方法。这个方法返回数组中满足提供的测试函数的第一个元素的索引。如果没有找到&am…...

爱普生机器人EPSON RC

爱普生机器人Epson RC系列&#xff0c;搭配其专用的Epson RC编程语言和软件环境&#xff0c;为用户提供了一个直观且功能强大的机器人控制和编程解决方案。以下是对Epson RC及爱普生机器人的一些详细介绍&#xff1a; Epson RC 定义&#xff1a;Epson RC 是爱普生机器人技术中…...

Linux探秘坊-------1.系统核心的低语:基础指令的奥秘解析(1)

1.Linux的背景介绍 Linux 操作系统的发展历程充满了激情与创新喵&#xff5e;&#x1f380; 萌芽期 (1983 - 1991)&#xff1a;Linux 的历史可追溯到 1983 年&#xff0c;理查德斯托曼 (Richard Stallman) 发起 GNU 计划&#xff0c;目标是创建一个自由软件操作系统。1987 年发…...

❤React-JSX语法认识和使用

1、JSX基本使用​ JSX是React的核心 JSX是ES的扩展 jsx语法 -> 普通的JavaScript代码 -> babel React可以使用JSX的前提和原因&#xff1a; React生态系统支持&#xff1a; 脚手架通常用于构建React应用程序&#xff0c;而JSX是React框架的核心语法之一。因此&#xf…...

51单片机应用开发(进阶)---定时器应用(电子时钟)

实现目标 1、巩固定时器的配置流程&#xff1b; 2、掌握按键、数码管与定时器配合使用&#xff1b; 3、功能1&#xff1a;&#xff08;1&#xff09;简单显示时间。显示格式&#xff1a;88-88-88&#xff08;时-分-秒&#xff09; 4、功能2&#xff1a;&#xff08;1&#…...

JavaScript中的对象-栈内存和堆内存以及this指向的两种情况(后续会出进阶)

1.1 栈内存和堆内存 我们知道程序是需要加载到内存中来执行的&#xff0c;我们可以将内存划分为两个区域:栈内存和堆内存 原始类型占据的空间是在栈内存中分配的对象类型占据的空间是在堆内存中分配的 1.1.1 值类型和引用类型 原始类型的保存方式&#xff1a;在变量中保存的是…...

shell脚本使用curl上传FTP

背景&#xff1a;要求使用curl通过shell脚本实现上传文件到FTP的功能&#xff0c;同时对远程目录不存在的时候&#xff0c;主动创建目录并上传文件&#xff0c;shell脚本如下&#xff1a; #!/bin/bash# FTP服务器的地址 FTP_SERVER"ftp://1.1.1.1:2121" # FTP用户名…...

【漏洞分析】Fastjson最新版本RCE漏洞

01漏洞编号 CVE-2022-25845CNVD-2022-40233CNNVD-202206-1037二、Fastjson知多少 万恶之源AutoType Fastjson的主要功能是将Java Bean序列化为JSON字符串&#xff0c;这样得到的字符串就可以通过数据库等方式进行持久化了。 但是&#xff0c;Fastjson在序列化及反序列化的过…...

【项目开发 | 跨域认证】JSON Web Token(JWT)

未经许可,不得转载。 文章目录 JWT设计背景:跨域认证JWT 原理JWT 结构JWT 使用方式注意JSON Web Token(缩写 JWT)是目前最流行的跨域认证解决方案,本文介绍它的原理、结构及用法。 JWT设计背景:跨域认证 互联网服务的用户认证流程是现代应用中的核心组成部分,通常的流程…...

杨中科 .Net Core 笔记 DI 依赖注入2

ServiceCollection services new ServiceCollection();//定义一个承放服务的集合 services.AddScoped<iGetRole, GetRole>();using (ServiceProvider serviceProvider services.BuildServiceProvider()) {var list serviceProvider.GetServices(typeof(iGetRole));//获…...

微信版产品目录如何制作?

微信作为我国最流行的社交媒体平台&#xff0c;拥有庞大的用户群体。许多企业都希望通过微信来推广自己的产品&#xff0c;提高品牌知名度。制作一份精美、实用的微信版产品目录&#xff0c;是企业微信营销的重要手段。微信版产品目录的制作方法&#xff0c;帮助您轻松入门。 ​…...

使用HTML、CSS和JavaScript创建动态圣诞树

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 ✨特色专栏&#xff1a…...

机器学习-35-提取时间序列信号的特征

文章目录 1 特征提取方法1.1 特征提取过程1.2 两类特征提取方法2 基于数据驱动的方法2.1 领域特定特征提取2.2 基于频率的特征提取2.2.1 模拟信号2.2.2 傅里叶变换2.2.3 抽取最大幅值对应特征2.2.4 抽取峰值幅值对应特征2.3 基于统计的特征提取2.4 基于时间的特征提取3 参考附录…...

【软件测试】设计测试用例的万能公式

文章目录 概念设计测试用例的万能公式常规思考逆向思维发散性思维万能公式水杯测试弱网测试如何进行弱网测试 安装卸载测试 概念 什么是测试用例&#xff1f; 测试⽤例&#xff08;Test Case&#xff09;是为了实施测试⽽向被测试的系统提供的⼀组集合&#xff0c;这组集合包…...

【MySQL 保姆级教学】事务的自动提交和手动提交(重点)--上(13)

目录 1. 什么是事务&#xff1f;2. 事务的版本支持3. 事务提交的方式3.1 事务提交方式的分类3.2 演示的准备的工作3.2.1 创建表3.2.2 MySQL的服务端和客户端3.2.3 调低事务的隔离级别 4. 手动提交4.1 手动提交的命令说明4.2 示例一4.3 示例二4.4 示例三4.5 示例四 5. 自动提交5…...

CUDA 核心与科学计算 :NVIDIA 计算核心在计算服务器的价值

在现代科学计算领域&#xff0c;NVIDIA GPU 的计算能力是突破研究瓶颈的关键力量&#xff0c;而其中的 CUDA 核心与科学计算有着紧密的联系。 CUDA 核心于 2007 年开发&#xff0c;是一款基于单指令多线程 (SIMT) 模型的多功能通用核心。它在处理并行计算任务方面能力卓越&…...

架构师之路-学渣到学霸历程-58

Nginx的反向代理实验 今天分享的实验其实就是一个变形&#xff1b;变形uri看看nginx的配置有什么区别&#xff1b; 这个就更加绕&#xff0c;是比较不同的配置路径会有什么的区别&#xff1f; 来看看这个变形会得出什么的效果 1.首先配置后端服务器的资源 首页资源–>1…...

qq相册为啥越来越糊

电子存储衰退的原因 存储设备的失真通常和 存储介质的老化、数据退化、电荷泄漏 等问题有关。尤其是对闪存类存储&#xff08;如SSD、U盘&#xff09;来说&#xff0c;随着时间的推移&#xff0c;存储在其中的电荷可能会流失&#xff0c;导致数据损坏。而对于传统的机械硬盘&am…...