【docker】

下载脚本

yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine docker-ce
yum install -y yum-utils device-mapper-persistent-data lvm2 --skip-broken
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sed -i 's#download.docker.com#mirrors.aliyun.com/docker-ce#g' /etc/yum.repos.d/docker-ce.repo
yum makecache fast
yum install -y docker-ce

配置国内镜像

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://n0dwemtq.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

什么是Docker

快速交付应用、运行应用

Docker是一个开源的应用容器引擎,完全使用沙箱机制,相互之间不会有任何接口(类似iPhone的app)。几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的是,他们不依赖于任何语言、框架包括系统。

vs 虚拟机

  1. docker是一个系统进程;虚拟机是在操作系统中的操作系统.
  2. docker体积小、启动速度快、性能好;虚拟机体积大、启动速度慢、性能一般

特点

隔离性:每个用户实例之间相互隔离,互不影响。

可配额/可度量:每个用户实例可以按需提供其计算资源,所使用的资源可以被计量。

移动性:用户的实例可以很方便地复制、移动和重建。

安全性:这个话题比较大,这里强调是host主机的角度尽量保护container。

解决问题

依赖关系复杂,容易出现兼容性问题

开发、测试、生产环境有差异

如何解决大型项目依赖关系复杂,不同组件依赖的兼容性问题?

Docker允许开发中将应用、依赖、函数库、配置一起打包,形成可移植镜像

Docker应用运行在容器中,使用沙箱机制,相互隔离

Docker如何解决开发、测试、生产环境有差异的问题?

Docker镜像中包含完整运行环境,包括系统函数库,仅依赖系统的Linux内核,因此可以在任意Linux操作系统上运行

相关概念

镜像(Image)

Docker将应用程序及其所需的依赖、函数库、环境、配置等文件打包在一起,称为镜像。

文件的层次结构,以及包含如何运行容器的元数据,Dockerfile中的每条命令都会在文件系统中创建一个新的层次结构,镜像就构建于这些联合的文件系统之上。

容器(Container)

镜像中的应用程序运行后形成的进程就是容器,只是Docker会给容器做隔离,对外不可见。

容器是从镜像创建的运行实例。它可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全的平台。

仓库

仓库是集中存放镜像文件的场所,仓库注册服务器(Registry)上往往存放着多个仓库,每个仓库中又包含了多个镜像,每个镜像有不同的标签(tag)。

DockerHub

DockerHub是一个Docker镜像的托管平台。这样的平台称为Docker Registry。

架构

C/S架构

服务端(server): Docker守护进程,负责处理Docker指令,管理镜像、容器等

客户端(client):通过命令或RestAPI向Docker服务端发送指令。可以在本地或远程向服务端发送指令。

技术的局限

1.网络限制:容器网络(Docker Network).让你可以方便地在同一主机下对容器进行网络连接,你就可以跨主机使用叠加网络功能。必须给网络定义增加预分配实例,每次提供容器时还需要额外步骤,这容易引起错误。

2.库控制受限:公共库在不知道谁以及如何创建镜像的情况下,可能会存在任意数量的有意或无意的稳定性和安全性风险。对于企业来说,有必要建立和维护一个私有库,这个库的建立挑战不大,但管理是个问题。

3.没有清晰的审计跟踪:提供容器是很简单的,但知道提供容器的时间、原因、方式以及提供方却不容易。因此,在提供之后,你并不掌握多少出于审计目的的历史。

4.运行实例的低可见性:如果没有经过深思熟虑的行动,实例提供后很难接触到运行容器的对象,也很难知道哪些应该出现在那里,哪些不应该出现在那里。

命令

139350ffa7474d989f59861215245c11.jpg

镜像名称一般分两部分组成:[repository]:[tag]

在没有指定tag时,默认是latest,代表最新版本的镜像

例如:

docker pull nginx

利用docker save将nginx镜像导出磁盘,然后再通过load加载回来
 

docker save -o nginx.tar nginx:latest
docker load -i nginx.tar

删除镜像

docker rmi nginx:latest

开始容器

docker run

运行转暂停

docker pause

暂停转运行

docker unpause

停止容器

docker stop

停止转运行

docker start

进入容器执行命令

docker exec

查看容器运行日志

docker logs

查看所有运行的容器及状态

docker ps

删除指定容器

docker rm

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

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

相关文章

AI诈骗频发,深度合成服务算法备案势在必行

在数字化时代&#xff0c;深度合成技术以其强大的功能和应用领域&#xff0c;逐渐渗透到我们生活的各个方面。然而&#xff0c;技术的双刃剑效应也日益显现&#xff0c;AI诈骗等新型犯罪手段层出不穷&#xff0c;给个人和社会安全带来了严重威胁。为了筑牢网络安全防线&#xf…

Redis概述

目录 redis概述1. 什么是redis2. 为什么使用redis3. redis为什么快4. 哪些场景下使用redis 参考 Redis概述 Redis在线体验网站 Try Redis 基础概念&#xff0c;后续知识有时间整理&#xff08;数据结构、核心知识、高可用&可扩展、应用实践&#xff09; redis概述 1. 什么是…

YOLOv9改进策略 | 添加注意力篇 | TripletAttention三重注意力机制(附代码+机制原理+添加教程)

一、本文介绍 本文给大家带来的改进是Triplet Attention三重注意力机制。这个机制&#xff0c;它通过三个不同的视角来分析输入的数据&#xff0c;就好比三个人从不同的角度来观察同一幅画&#xff0c;然后共同决定哪些部分最值得注意。三重注意力机制的主要思想是在网络中引入…

Mac中隐私安全性设置-打开任何来源

文章目录 **Mac中隐私安全性设置-打开任何来源**一、目的二、打开方式 Mac中隐私安全性设置-打开任何来源 一、目的 从外部下载的软件频繁打不开&#xff0c;需要从隐私安全性中重新选择一下&#xff1b;默认Mac隐藏了任何来源 二、打开方式 打开终端&#xff0c;输入一下命…

解耦、异步、削峰是什么

目录 面试官:你知道解耦、异步、削峰是什么吗解耦(Decoupling)异步(Asynchronous)削峰(Peak Shaving)该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:你知道解耦、异步、削峰是什么吗 解耦…

51.HarmonyOS鸿蒙系统 App(ArkUI)通知

普通文本通知测试 长文本通知测试 多行文本通知测试 图片通知测试 进度条通知测试 通知简介 应用可以通过通知接口发送通知消息&#xff0c;终端用户可以通过通知栏查看通知内容&#xff0c;也可以点击通知来打开应用。 通知常见的使用场景&#xff1a; 显示接收到的短消息、…

不碎片化学习,尽量用整块的时间系统化学习

从高中毕业之后&#xff0c;我们好像就很难再继续那种系统化的学习&#xff0c;甚至失去了自我知识构建的能力。然而&#xff0c;真正的理解和掌握知识需要深入和连贯&#xff0c;这正是系统化学习的优势所在。 系统化学习的重要性 全面理解&#xff1a;系统化学习能够帮助我…

算法提高 第一期 KMP扩展算法

1## 具体思路&#xff1a; 和KMP算法的是想类似&#xff0c;充分利用已经比较字符性质来减少冗余的字符比较次数。KMP的思想是充分的利用模式串中所有前缀字串&#xff08;以模式串为开头的字串&#xff09;的真前缀和真后缀&#xff08;指子串的开始字符与子串的最后字符相等的…

docker中的资源控制

前言 docker 使用cgrqup控制资源&#xff0c;K8S 里面也有limit&#xff08;使用上限&#xff09; docker通过cgroup来控制容器使用的资源配额&#xff0c;包括CPU、内存、磁盘三大方面&#xff0c;基本覆盖了常见的资源配额和使用量控制。 Cgroup 是 Control …

【单链表】LeetCode:203.移除链表元素

&#x1f381;个人主页&#xff1a;我们的五年 &#x1f50d;系列专栏&#xff1a;每日一练 &#x1f337;追光的人&#xff0c;终会万丈光芒 前言&#xff1a; 该题是数据结构&#xff0c;单链表的一道基本题&#xff0c;刚刚准备学习数据结构&#xff0c;或者正在学习数据结…

CPP线程管理类实现

一个线程管理模块应该包含Task&#xff08;任务类&#xff09;、Thread&#xff08;线程类&#xff09;、线程管理类&#xff08;ThreadManager&#xff09;。 #pragma once #include <iostream> #include <thread> #include <mutex> #include <vector&g…

JRT多服务器同步程序

之前的JRT只部署在一个服务器&#xff0c;实际运用可能会有数台、数十台、或者更多服务器。那么多台服务器就需要程序同步机制。这里借助Rsync同步&#xff0c;但是有个问题是Rsync同步jar之后他不知道是否需要重启站点&#xff0c;为此实现java控制台驱动Rsync&#xff0c;重定…

前端css中的transform(转换)的使用

前端css中的transform的使用 一、前言二、流程图三、举例&#xff08;一&#xff09;、平移1.平移&#xff0c;源码12.源码1运行效果(1).视频效果(2).截图效果 3.平移3d效果&#xff0c;源码24.源码2运行效果&#xff08;1&#xff09;、视频效果&#xff08;2&#xff09;、截…

深入了解计算机系统——利用循环展开对程序的优化

系列文章&#xff1a; 操作系统详解(1)——操作系统的作用 操作系统详解(2)——异常处理(Exception) 操作系统详解(3)——进程、并发和并行 操作系统详解(4)——进程控制(fork, waitpid, sleep, execve) 操作系统详解(5)——信号(Signal) 文章目录 一些概念CPE 初步优化消除不必…

python爬虫之爬取文本内容(2)

一、基本案例 #注意&#xff1a;需要将requests包换成2.27.1 #中文编码gbk也可能是utf-8 import requests #from bs4 import BeautifulSoupif __name__ __main__:url https://www.biqg.cc/book/6909/1.html#目标访问网站url#伪装头信息的引入header {"User-Agent"…

Golang | Leetcode Golang题解之第41题缺失的第一个正数

题目&#xff1a; 题解&#xff1a; func firstMissingPositive(nums []int) int {n : len(nums)for i : 0; i < n; i {for nums[i] > 0 && nums[i] < n && nums[nums[i]-1] ! nums[i] {nums[nums[i]-1], nums[i] nums[i], nums[nums[i]-1]}}for i …

Redis入门到通关之Redis实现Session共享

文章目录 ☃️前期概要☃️基于Session实现登录方案☃️现有方案存在的问题☃️Redis代替Session的业务流程❄️❄️设计key的结构❄️❄️设计key的具体细节❄️❄️整体访问流程 欢迎来到 请回答1024 的博客 &#x1f353;&#x1f353;&#x1f353;欢迎来到 请回答1024的博…

Windows 10 安装配置WSL2(Ubuntu 20.04)教程

Windows 10 安装配置WSL2&#xff08;Ubuntu 20.04&#xff09;教程 一、WSL简介 WSL&#xff08;Windows Subsystem for Linux&#xff09;是一个兼容层&#xff0c;允许在Windows 10上原生运行Linux二进制可执行文件。 二、安装WSL2 3.1 传统手动安装 更新系统&#xff…

制作和合入git补丁

制作git补丁 git log -u a44bc4cf08e94741052cb471512868d14e803f2a -n 1 > log.patch -u显示详细差异 -n日志数量 合入git补丁 git apply log.patch 确保补丁目录与git目录一致

OFDM同步技术

文章目录 前言一、OFDM 同步技术二、MATLAB 仿真1、STO 估计技术①、核心源码②、仿真结果 2、CFO 估计技术①、核心源码②、仿真结果 三、资源自取 前言 本文对 OFDM 同步技术以思维导图的形式呈现&#xff0c;有关仿真部分进行了讲解实现。 一、OFDM 同步技术 OFDM 同步技术…