云原生-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;触…

【插件】重复执行 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.…

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

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

深度学习工具和框架详细指南: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.忽略回车的字符串输…

元器件封装

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

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…

【MySQL】MySQL在Centos环境安装

&#x1f525;个人主页&#xff1a; Forcible Bug Maker &#x1f525;专栏&#xff1a; MySQL 目录 &#x1f308;前言&#x1f525;卸载不要的环境&#x1f525;检查系统安装包&#x1f525;卸载这些默认安装包&#x1f525;获取mysql官方yum源&#x1f525;安装mysql yum源…

【算法】动态规划中01背包问题解析

&#x1f4e2;博客主页&#xff1a;https://blog.csdn.net/2301_779549673 &#x1f4e2;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指正&#xff01; &#x1f4e2;本文由 JohnKi 原创&#xff0c;首发于 CSDN&#x1f649; &#x1f4e2;未来很长&#…

Linux开发工具:Vim 与 gcc,打造高效编程的魔法双剑

文章目录 一、初识Vim模式 二、vim基本操作2.1基础操作2.2命令模式/正常模式2.2.1光标定位2.2.2复制粘贴、删除2.2.3撤销2.2.4替换字符2.2.5替换模式 2.3底行模式2.3.1退出vim和**保存文件**2.3.2定位文本字符串2.3.3命令2.3.4实现分屏2.3.5替换指定字符串 2.4补充指令2.4.1视图…

[JAVA]MyBatis框架—如何获取SqlSession对象实现数据交互(基础篇)

假设我们要查询数据库的用户信息&#xff0c;在MyBatis框架中&#xff0c;首先需要通过SqlSessionFactory创建SqlSession&#xff0c;然后才能使用SqlSession获取对应的Mapper接口&#xff0c;进而执行查询操作 在前一章我们学习了如何创建MyBatis的配置文件mybatis.config.xm…

Linux基础开发工具使用

目录 1. 软件包管理器yum 1.1 概念介绍 1.2 更换镜像源&#xff08;可选&#xff09; 1.3 工具的搜索/查看/安装/卸载 1.4 优势 2. vim编辑器 2.1 vi和vim 2.2 三种常用模式和操作 2.3 配置vim 3. Linux编译器-gcc/g 4. Linux调试器-gdb 5. make和Makefile 6.…

群控系统服务端开发模式-应用开发-前端图片格式功能开发

一、添加视图 在根目录下src文件夹下views文件夹下param文件夹下grade文件夹下&#xff0c;新建index.vue&#xff0c;代码如下 <template><div class"app-container"><div class"filter-container" style"float:left;"><…

【WPF】Prism库学习(一)

Prism介绍 1. Prism框架概述&#xff1a; Prism是一个用于构建松耦合、可维护和可测试的XAML应用程序的框架。它支持WPF、.NET MAUI、Uno Platform和Xamarin Forms等多个平台。对于每个平台&#xff0c;Prism都有单独的发布版本&#xff0c;并且它们在不同的时间线上独立开发。…

The Planets: Earth -- 练习

环境搭建 该靶场环境来自Vulnhub -------- Difficulty: Easy 靶机与Kali的IP地址只需要在同一局域网即可&#xff08;同一个网段,即两虚拟机处于同一网络模式&#xff09;&#xff0c;所以需要调整KALI和靶场的网络模式&#xff0c;为了方便测试本地采用NAT模式。 注意&…

C/C++语言基础--initializer_list表达式、tuple元组、pair对组简介

本专栏目的 更新C/C的基础语法&#xff0c;包括C的一些新特性 前言 initializer_list表达式、tuple元组、pair对组再C日常还是比较常用的&#xff0c;尤其是对组在刷算法还是挺好用的&#xff0c;这里做一个简介&#xff1b;这三个语法结合C17的结构化绑定会更好用&#xff…

『VUE』27. 透传属性与inheritAttrs(详细图文注释)

目录 什么是透传属性&#xff08;Forwarding Attributes&#xff09;使用条件唯一根节点禁用透传属性继承总结 欢迎关注 『VUE』 专栏&#xff0c;持续更新中 欢迎关注 『VUE』 专栏&#xff0c;持续更新中 什么是透传属性&#xff08;Forwarding Attributes&#xff09; 在 V…