云原生-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 可以帮助开发者构建、部署和管理微服务应用,充分发挥云原生技术的优势,提升应用的灵活性、可扩展性和高可用性。

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

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

相关文章

@Autowired 和 @Resource思考(注入redisTemplate时发现一些奇怪的现象)

1. 前置知识 Configuration public class RedisConfig {Beanpublic RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {RedisTemplate<String, Object> template new RedisTemplate<>();template.setConnectionFactory(facto…

HarmonyOS ArkUI(基于ArkTS) 常用组件

一 Button 按钮 Button是按钮组件&#xff0c;通常用于响应用户的点击操作,可以加子组件 Button(我是button)Button(){Text(我是button)}type 按钮类型 Button有三种可选类型&#xff0c;分别为胶囊类型&#xff08;Capsule&#xff09;、圆形按钮&#xff08;Circle&#xf…

Jenkins + gitee 自动触发项目拉取部署(Webhook配置)

目录 前言 Generic Webhook Trigger 插件 下载插件 ​编辑 配置WebHook 生成tocken 总结 前言 前文简单介绍了Jenkins环境搭建&#xff0c;本文主要来介绍一下如何使用 WebHook 触发自动拉取构建项目&#xff1b; Generic Webhook Trigger 插件 实现代码推送后&#xff0c;触…

React Native 全栈开发实战班 - 网络与数据之网络请求基础

在移动应用中&#xff0c;网络请求 是实现与服务器进行数据交互的核心功能。React Native 基于 JavaScript 的特性&#xff0c;提供了多种方式进行网络请求&#xff0c;包括使用 fetch API、axios 库以及 WebSocket 等。本章节将详细介绍如何在 React Native 中进行网络请求&am…

【插件】重复执行 pytest-repeat

安装 pip3 install pytest-repeat 用法 1.命令行 pytest --count num pytest --count 32.装饰器 pytest.mark.repeat(num) #num运行次数 pytest.mark.repeat(5)#执行结果如下&#xff1a;

软件测试 —— 自动化基础

目录 前言 一、Web 自动化测试 1.什么是 Web 自动化测试 2.驱动 3.安装驱动管理 二、Selenium 1.简单 web 自动化测试示例 2.工作原理 三、元素定位 1.cssSelector 2.XPath 四、操作测试对象 1.点击/提交对象 2.模拟按键输入 3.清除文本内容 4.获取文本信息 5.…

Java中 LinkedList<>,ArrayDeque<>的区别 || Queue和Deque的区别

我是你爹 LinkedList<> 和 ArrayDeque<> 的区别Queue接口 和 Deque接口区别Queue 的用法Deque 的用法 LinkedList<> 和 ArrayDeque<> 的区别 1. 数据结构实现方式&#xff1a; LinkedList&#xff1a; 基于链表结构&#xff0c;是一个双向链表。每个…

HVV蓝队基础

免责声明 学习视频来自B 站up主泷羽sec&#xff0c;如涉及侵权马上删除文章。 笔记的只是方便各位师傅学习知识&#xff0c;以下代码、网站只涉及学习内容&#xff0c;其他的都与本人无关&#xff0c;切莫逾越法律红线&#xff0c;否则后果自负。 企业网络架构 企业技术和信…

Docker+Django项目部署-从Linux+Windows实战

一、概述 1. 什么是Docker Docker 是一个开源的应用容器引擎&#xff0c;支持在win、mac、Linux系统上进行安装。可以帮助我们在一台电脑上创建出多个隔离的环境&#xff0c;比传统的虚拟机极大的节省资源 。 为什么要创建隔离的环境&#xff1f; 假设你先在有一个centos7.…

分布式,微服务,SpringCloudAlibaba,nacos,gateway,openFeign

想学习微服务SpringCloudAlibaba的小伙伴&#xff0c;可以观看视频 地址&#xff1a; https://www.bilibili.com/video/BV1cFDEYWEkY/?vd_source14d27ec13a4737c281b7c79463687112分布式架构和微服务是两个密切相关但又有所区别的概念。它们在现代软件工程中经常被提及&#…

【jvm】如何破坏双亲委派机制

目录 1.说明2.重写ClassLoader的loadClass方法2.1 原理2.2 实现步骤2.3 注意事项 3.使用线程上下文类加载器3.1 原理3.2 实现步骤3.3 应用场景 4.利用SPI机制4.1 原理4.2 实现步骤4.3 应用场景 5.Tomcat等容器的自定义类加载器5.1 原理5.2 实现方式5.3 应用场景 1.说明 1.双亲委…

深度学习工具和框架详细指南:PyTorch、TensorFlow、Keras

引言 在深度学习的世界中&#xff0c;PyTorch、TensorFlow和Keras是最受欢迎的工具和框架&#xff0c;它们为研究者和开发者提供了强大且易于使用的接口。在本文中&#xff0c;我们将深入探索这三个框架&#xff0c;涵盖如何用它们实现经典深度学习模型&#xff0c;并通过代码…

蓝桥杯-洛谷刷题-day3(C++)

目录 1.忽略回车的字符串输入 i.getline() ii.逐个字符的识别再输入 2.获取绝对值abs() 3.做题时的误区 4.多个变量的某一个到达判断条件 i.max() 5.[NOIP2016 提高组] 玩具谜题 i.代码 6.逻辑上的圆圈 i.有限个数n的数组 7.数组的定义 i.动态数组 1.忽略回车的字符串输…

fast-api后端 + fetch 前端流式文字响应

fast-api后端 fetch 前端流式文字响应 fast-api后台接口流式响应 前端fetch 流式文本数据处理 fast-api后台接口 流式响应 from fastapi.responses import StreamingResponse from tqdm import tqdm from pydantic import BaseModelclass ItemDataSingle(BaseModel):data: …

作用域、生命周期和链接性的英文解释

作用域 - Scope Scope refers to the region of a program where a variable, function, or other identifier can be accessed or referenced. 生命周期 - Lifetime (or Duration in some contexts) Lifetime describes the period during which a variable or object exists…

元器件封装

元器件封装类型 为什么越来越多用贴片元件&#xff0c;而不是插件元件 为什么越来越多用贴片元件&#xff0c;而不是插件元件 1.体积小、质量小、容易保存和运输&#xff1b; 2.容易焊接和拆卸。抗震效果好。 贴片元件不用过孔&#xff0c;用锡少。直插元件最麻烦的就是拆卸&a…

【jvm】为什么要用元空间替代永久代

目录 1. 说明2. 永久代的限制与问题2.1 内存管理限制2.2 垃圾收集效率2.3 类的卸载问题 3. 元空间的优势 1. 说明 1.Java使用元空间替代永久代&#xff0c;这一变化主要源于永久代在实现上存在的限制和问题&#xff0c;以及元空间所提供的更优性能和更高灵活性。2.Java使用元空…

基本数据类型:Kotlin、Dart (Flutter)、Java 和 C++ 的比较

文章目录 一、基本数据类型的比较1.1 整数类型1.2 浮点类型1.3 字符类型1.4 布尔类型1.5 小结 二、有符号和无符号整数三、二进制补码表示四、精度丢失问题五、结论 在编程语言中&#xff0c;基本数据类型是构建更复杂数据结构的基础。在本文中&#xff0c;我们将比较 Kotlin、…

C++ 的发展

目录 C 的发展总结&#xff1a;​编辑 1. C 的早期发展&#xff08;1979-1985&#xff09; 2. C 标准化过程&#xff08;1985-1998&#xff09; 3. C 标准演化&#xff08;2003-2011&#xff09; 4. C11&#xff08;2011年&#xff09; 5. C14&#xff08;2014年&#xf…

《Python 网络爬虫》

一、引言 在当今信息时代&#xff0c;互联网上蕴含着大量有价值的数据。网络爬虫作为一种自动获取网页数据的技术手段&#xff0c;在数据挖掘、信息检索、市场分析等领域发挥着重要作用。Python 由于其简洁易学、功能强大的特点&#xff0c;成为了网络爬虫开发的热门语言之一。…