简明docker快速入门并实践方法
简明docker快速入门并实践方法
- 前言:
- 1. 什么是Docker?
- 2. Docker的基本概念
- 3. 安装配置Docker
- 4. Docker基本命令:
- 5. 简单实践:拉取Nginx镜像-自定义配置-推送镜像
- 步骤 1:拉取Nginx镜像
- 步骤 1.5(可选):运行Nginx容器以熟悉操作
- 步骤 2:创建自定义Nginx配置文件
- 步骤 3:创建Dockerfile
- 步骤 4:构建Docker镜像
- 步骤 5:运行Docker容器
- 步骤 6(可选):登录Docker Hub并推送镜像
- 6.补充内容
- Docker网络的基本概念
- Docker网络的基本命令
前言:
这是一篇简明docker快速入门并实践方法,目的是希望大家在半个小时内对docker快速了解并进行操作。故比较简洁(不过基本的使用方法都包含了),建议和那些更详细的知识帖结合起来看。
下面有两个视频,第一个视频看完可以对docker有基本的了解。第二个视频看完可以学会一些docker的实操操作。大家可以先看第一个视频后,再根据我下面分享的知识直接进行docker
的实践操作:
- 改变软件行业的技术!程序员、软件爱好者必须掌握的Docker,到底是什么?
- 保姆级Docker入门教程:10分钟从零开始彻底掌握 Docker,0 基础到实战部署
1. 什么是Docker?
Docker是基于Linux
容器技术的一种应用,它使得开发者能够将应用程序及其依赖打包成一个轻量级、可移植的容器。从而确保该应用能够在任何环境中一致地运行。相比传统的虚拟机技术,Docker更加高效和快速,因为它不包含整个操作系统,而是共享主机操作系统的内核。
2. Docker的基本概念
- 镜像(Image):
- 用于创建容器的只读模板,包含运行某个应用所需的所有代码、库、配置文件等。
- 使用
docker pull <image_name>
从Docker Hub拉取镜像。
- 容器(Container):
- 镜像的运行实例。它可以被启动、开始、停止、删除,并且可以通过Docker命令行接口与之交互。
- 使用
docker run <image_name>
启动容器
- 仓库(Repository):
- 存储和分享Docker镜像的地方。分为公共仓库(如Docker Hub)和私有仓库。
- 使用
docker login
登录Docker Hub
,docker push <image_name>
推送镜像。
- Dockerfile
Dockerfile
定义了构建镜像的步骤,通过docker build -t <image_name> .
命令创建镜像。- 示例:
FROM ubuntu:latest RUN apt-get update && apt-get install -y nginx EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]
3. 安装配置Docker
访问Docker官网下载适合的版本。对于Windows和macOS用户,推荐使用Docker Desktop
,它集成了Docker
引擎、Docker CLI
客户端和其他实用工具。
-
安装Docker:
- 访问Docker官网,根据你的操作系统(
Windows
、macOS
、Linux
)下载并安装Docker Desktop
或Docker Engine
。 - 安装过程中,可以参考这两个帖子:1. 2024最新 Windows系统安装docker教程,2. 在windows安装Docker到指定路径
- 安装完成后,通过命令行(如
Windows
的PowerShell
或Linux
的Terminal
)运行docker --version
检查安装是否成功。
- 访问Docker官网,根据你的操作系统(
-
基本配置:
- 登录
Docker Hub
(可选,用于拉取或推送镜像):docker login
- 配置
Docker
以使用非默认设置(如代理、存储驱动等),可参考官方文档。
- 登录
4. Docker基本命令:
- 基本命令
docker --version
:检查Docker是否正确安装及当前版本。docker pull <image-name>
:从Docker Hub下载指定的镜像。docker images
:列出本地所有的镜像。docker run <image_name>
:启动容器。docker run -it --rm <image-name>
:基于镜像启动一个新的容器,并进入其内部shell环境。docker ps
:显示正在运行的容器。docker ps -a
:查看所有容器(包括停止的)。docker stop <container-id>
:停止指定ID的容器。docker rm <container_id>
:删除指定ID的容器docker tag <镜像名>:<标签> <仓库用户名>/<镜像名>:<标签>
: 为自己设置的镜像添加标签docker push <仓库用户名>/<镜像名>:<标签>
推送镜像到仓库
5. 简单实践:拉取Nginx镜像-自定义配置-推送镜像
步骤 1:拉取Nginx镜像
首先,从Docker Hub拉取官方的Nginx镜像:
docker pull nginx:latest
确认镜像已成功拉取:
docker images
你应能在列表中看到名为nginx
且标签为latest
的镜像。
操作解释:
docker pull
命令用于从Docker Hub或其他容器镜像仓库中拉取镜像。nginx:latest
指定了要拉取的镜像名称和标签(这里是最新的稳定版)。- 使用
docker images
命令查看本地已有的镜像列表,确认nginx镜像是否已成功拉取。
步骤 1.5(可选):运行Nginx容器以熟悉操作
docker run -d -p 8080:80 --name my-test-nginx nginx:latest
-d
表示以守护进程模式运行容器。-p 8080:80
将容器的80端口映射到主机的8080端口。--name my-test-nginx
为容器指定一个名称。
现在,你可以在浏览器中访问 http://localhost:8080
,应该会看到Nginx
的默认欢迎页面。
注意:在继续下一步之前,你可以使用 docker stop my-test-nginx
停止这个容器,并使用 docker rm my-test-nginx
删除它(如果你不再需要它的话,不过这里不删)。
docker stop my-test-nginx
docker rm my-test-nginx
步骤 2:创建自定义Nginx配置文件
在创建自定义配置文件前,先了解Nginx
默认配置的关键部分。Nginx
的主配置文件通常位于/etc/nginx/nginx.conf
,它定义了Nginx
的工作方式、事件处理、HTTP
服务器设置等。
现在,我们将创建一个自定义配置文件。首先,首先,创建一个新的目录用于存放你的Nginx
配置文件和Dockerfile
文件。例如,创建名为my-nginx-config
的目录:
mkdir my-nginx-config
cd my-nginx-config
然后,在该目录中创建一个名为nginx.conf
的文件,并添加以下内容:(这是一个简化的nginx.conf
示例,它保留了Nginx
的基本功能,并且容易理解)
user nginx;
worker_processes 1; # 对于简单实践,我们可以只使用一个工作进程error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;events {worker_connections 1024; # 每个worker进程的最大连接数
}http {include /etc/nginx/mime.types;default_type application/octet-stream;log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';access_log /var/log/nginx/access.log main;sendfile on;tcp_nopush on;tcp_nodelay on;keepalive_timeout 65;include /etc/nginx/conf.d/*.conf; # 默认包含的配置文件目录,可以添加自定义配置# 定义一个简单的服务器块,用于测试server {listen 80;server_name localhost;location / {root /usr/share/nginx/html;index index.html index.htm;}# 错误页面处理error_page 500 502 503 504 /50x.html;location = /50x.html {root /usr/share/nginx/html;}}
}
步骤 3:创建Dockerfile
在同一目录下(my-nginx-config
),创建一个名为Dockerfile
的文件,并添加以下内容:
# 使用官方的Nginx镜像作为基础镜像
FROM nginx:latest# 将当前目录下的nginx.conf文件复制到容器中的/etc/nginx/nginx.conf位置.
# 注意:这里假设Dockerfile和nginx.conf在同一目录下
COPY nginx.conf /etc/nginx/nginx.conf# 如果有其他配置文件或静态资源,也可在此处复制
# COPY default.conf /etc/nginx/conf.d/default.conf
# COPY html/ /usr/share/nginx/html/# 暴露80端口(Nginx默认端口)
EXPOSE 80# 启动Nginx服务,并保持在前台运行(daemon off)
CMD ["nginx", "-g", "daemon off;"]
解释:
COPY nginx.conf /etc/nginx/nginx.conf
:这条指令将本地(构建上下文)的nginx.conf
文件复制到容器内的/etc/nginx/nginx.conf
位置,替换掉容器默认的Nginx
配置文件。EXPOSE 80
:这条指令告诉Docker
,容器在运行时需要监听80
端口(虽然这不是必需的,因为Nginx
默认监听80
端口,但声明一下是个好习惯)。CMD ["nginx", "-g", "daemon off;"]
:这条指令指定了容器启动时默认执行的命令。这里使用daemon off
参数是为了让Nginx在前台运行,这样Docker容器就不会因为Nginx进入后台而立即退出。
步骤 4:构建Docker镜像
返回上一级目录(包含Dockerfile
和nginx.conf
的目录),然后构建Docker
镜像:
docker build -t my-custom-nginx .
- 这将创建一个名为
my-custom-nginx
的Docker镜像。 -t
选项用于为镜像指定标签,.
表示当前目录为构建上下文。
步骤 5:运行Docker容器
使用刚刚构建的镜像运行容器:
docker run -d -p 8080:80 --name my-custom-nginx-container my-custom-nginx
- 这将启动一个名为
my-custom-nginx-container
的容器,并将容器的80
端口映射到主机的8080
端口。 - 访问
http://localhost:8080
,你将看到基于自定义配置的Nginx页面。
步骤 6(可选):登录Docker Hub并推送镜像
首先,登录Docker Hub:
docker login
然后,为镜像打标签(如果你的Docker Hub
用户名是your-username
):
docker tag my-custom-nginx your-username/my-custom-nginx
最后,推送镜像到Docker Hub
:
docker push your-username/my-custom-nginx
至此,你已经成功地创建了一个自定义的Nginx
镜像,并将其推送到了Docker Hub
。
6.补充内容
Docker网络的基本概念
- 网络(Networking):
- Docker容器可以通过Docker网络相互通信,也可以与外部网络通信。Docker提供了多种网络模式,如bridge、host、overlay等。
- 卷(Volumes):
- Docker卷用于持久化数据,即使容器被删除,卷中的数据仍然保留。这有助于数据的备份、恢复和迁移。
- Compose(docker-compose):
- Docker Compose是一个用于定义和运行多容器Docker应用程序的工具。通过
docker-compose.yml
文件,可以轻松地配置和管理多个容器的启动、停止和连接。
- Docker Compose是一个用于定义和运行多容器Docker应用程序的工具。通过
Docker网络的基本命令
docker network ls
:列出所有Docker网络。docker volume ls
:列出所有Docker卷。docker-compose up
:根据docker-compose.yml
文件启动所有服务。docker-compose down
:停止并移除由docker-compose.yml
定义的所有容器、网络、卷和默认网络。
相关文章:
![](https://www.ngui.cc/images/no-images.jpg)
简明docker快速入门并实践方法
简明docker快速入门并实践方法 前言:1. 什么是Docker?2. Docker的基本概念3. 安装配置Docker4. Docker基本命令:5. 简单实践:拉取Nginx镜像-自定义配置-推送镜像步骤 1:拉取Nginx镜像步骤 1.5(可选…...
![](https://i-blog.csdnimg.cn/direct/fc35bfc3307b42479f1605c020a6239c.png)
《MambaIR:一种基于状态空间模型的简单图像修复基线方法》学习笔记
paper:2402.15648 目录 摘要 一、引言 1、模型性能的提升依赖于网络感受野的扩大: 2、全局感受野和高效计算之间存在固有矛盾: 3、改进版 Mamba的巨大潜力 4、Mamba 在图像修复任务中仍面临以下挑战: 5、方法 6、主要贡献…...
![](https://i-blog.csdnimg.cn/direct/6352602593724d1ebc20a9deb43146cc.jpeg)
链式前向星的写法
【图论02】动画说图的三种保存方式 降低理解门槛 邻接表 链式前向星 邻接矩阵_哔哩哔哩_bilibili 杭电ACM刘老师-算法入门培训-第12讲-拓扑排序及链式前向星_哔哩哔哩_bilibili 图论003链式前向星_哔哩哔哩_bilibili(链式前向星的遍历) head数组的下标…...
![](https://img-blog.csdnimg.cn/cc002cbd5c414c5393e19c5e0a0dbf20.gif#pic_center#pic_center)
【逆境中绽放:万字回顾2024我在挑战中突破自我】
🌈个人主页: Aileen_0v0 🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 💫个人格言:“没有罗马,那就自己创造罗马~” 文章目录 一、引言二、个人成长与盘点情感与心理成长学习与技能提升其它荣誉 三、年度创作历程回顾创作内容概…...
![](https://www.ngui.cc/images/no-images.jpg)
尺取法(算法优化技巧)
问题和序列的区间有关,且需要操作两个变量,可以用两个下标(指针)i 和 j 扫描区间。 1,反向扫描,i 从头,j 从尾,在中间相遇。 例1.1(P37) 找指定和的整数对…...
![](https://www.ngui.cc/images/no-images.jpg)
基于 K-Means 聚类分析实现人脸照片的快速分类
注:本文在创作过程中得到了 ChatGPT、DeepSeek、Kimi 的智能辅助支持,由作者本人完成最终审阅。 在 “视频是不能 P 的” 系列文章中,博主曾先后分享过人脸检测、人脸识别等相关主题的内容。今天,博主想和大家讨论的是人脸分类问题。你是否曾在人群中认错人,或是盯着熟人的…...
![](https://i-blog.csdnimg.cn/direct/01d83612a78f4496abce05d9199c1d86.png)
【漏洞预警】FortiOS 和 FortiProxy 身份认证绕过漏洞(CVE-2024-55591)
文章目录 一、产品简介二、漏洞描述三、影响版本四、漏洞检测方法五、解决方案 一、产品简介 FortiOS是Fortinet公司核心的网络安全操作系统,广泛应用于FortiGate下一代防火墙,为用户提供防火墙、VPN、入侵防御、应用控制等多种安全功能。 FortiProxy则…...
![](https://static.oschina.net/uploads/img/202501/17230006_PqyC.png)
7.5.4 MVCC优化测试
作者: h5n1 原文来源: https://tidb.net/blog/4e02d900 1. 背景 由于MVCC 版本数量过多导致rocksdb扫描key数量过多影响SQL执行时间是tidb经常出现问的问题,tidb也一直在致力于优化该问题。 一些优化方式包括比: (1) 从传统…...
![](https://i-blog.csdnimg.cn/direct/1abf2a7cbaeb4bd0a014c2919065a096.png)
STM32 FreeRTOS 事件标志组
目录 事件标志组简介 基本概念 1、事件位(事件标志) 2、事件组 事件组和事件位数据类型 事件标志组和信号量的区别 事件标志组相关API函数介绍 事件标志组简介 基本概念 当在嵌入式系统中运行多个任务时,这些任务可能需要相互通信&am…...
![](https://i-blog.csdnimg.cn/img_convert/d82cf687ba30003add0e8c95bcc0c478.png)
生成树机制实验
1 实验内容 1、基于已有代码,实现生成树运行机制,对于给定拓扑(four_node_ring.py),计算输出相应状态下的生成树拓扑 2、构造一个不少于7个节点,冗余链路不少于2条的拓扑,节点和端口的命名规则可参考four_node_ring.py,使用stp程序计算输出生成树拓扑 2 实验原理 一、…...
![](https://i-blog.csdnimg.cn/direct/9e17c82cad8943a2b3d01d39e419097e.png)
企业分类相似度筛选实战:基于规则与向量方法的对比分析
文章目录 企业表相似类别筛选实战项目背景介绍效果展示基于规则的效果基于向量相似的效果 说明相关文章推荐 企业表相似类别筛选实战 项目背景 在当下RAG(检索增强生成)技术应用不断发展的背景下,掌握文本相似算法不仅能够助力信息检索&…...
![](https://csdnimg.cn/release/blog_editor_html/release2.3.7/ckeditor/plugins/CsdnLink/icons/icon-default.png?t=O83A)
2024年博客之星年度评选—创作影响力评审入围名单公布
2024年博客之星活动地址https://www.csdn.net/blogstar2024 TOP 300 榜单排名 用户昵称博客主页 身份 认证 评分 原创 博文 评分 平均 质量分评分 互动数据评分 总分排名三掌柜666三掌柜666-CSDN博客1001002001005001wkd_007wkd_007-CSDN博客1001002001005002栗筝ihttps:/…...
![](https://i-blog.csdnimg.cn/direct/560f83fa86fd41f298886b432dfe6671.png)
递归40题!再见递归
简介:40个问题,有难有易,均使用递归完成,需要C/C的指针、字符串、数组、链表等基础知识作为基础。 1、数字出现的次数 由键盘录入一个正整数,求该整数中每个数字出现的次数。 输入:19931003 输出…...
![](https://i-blog.csdnimg.cn/direct/bacf0e527b334244aee766065ba6137d.png)
社区版Dify实现文生视频 LLM+ComfyUI+混元视频
社区版Dify实现文生视频 LLMComfyUI混元视频 一、 社区版Dify实现私有化混元视频效果二、为什么社区版Dify可以在对话框实现文生视频?LLMComfyUI混元视频 实现流程图(重点)1. 文生视频模型支持ComfyUI2. ComfyUI可以轻松导出API实现封装3. Di…...
![](https://i-blog.csdnimg.cn/direct/b521cfe269b84b8e87b550c193132793.png)
【LLM】Openai-o1及o1类复现方法
note 可以从更为本质的方案出发,通过分析强化学习的方法,看看如何实现o1,但其中的核心就是在于,如何有效地初始化策略、设计奖励函数、实现高效的搜索算法以及利用强化学习进行学习和优化。 文章目录 note一、Imitate, Explore, …...
![](https://www.ngui.cc/images/no-images.jpg)
jlatexmath-android如何实现自定义渲染字符
使用jlatexmath-android的过程,如果出现个别字符渲染不了,会导致无法显示 常用的做法是新增自定义字体切换系统默认字体渲染,下面我们介绍第2种方法。 修改流程: 1、到jlatexmath-android的官网下载源码到本地,导入…...
![](https://www.ngui.cc/images/no-images.jpg)
dockerhub上一些镜像
K8s下网络排障工具 https://hub.docker.com/r/nicolaka/netshoot ex kubectl run tmp-shell --rm -i --tty --image nicolaka/netshoot -- /bin/bash # 主机的net ns下运行 kubectl run tmp-shell --rm -i --tty --overrides{"spec": {"hostNetwork": tru…...
![](https://www.ngui.cc/images/no-images.jpg)
Python 爬虫学习指南与资料分享
Python爬虫学习资料 Python爬虫学习资料 Python爬虫学习资料 在数字化浪潮中,Python 爬虫作为强大的数据获取工具,为众多领域提供关键支持。想要系统掌握这门技术,以下的学习指南与资料分享将为你照亮前行道路。 一、学习指南 入门奠基 …...
![](https://www.ngui.cc/images/no-images.jpg)
TypeScript特有运算符和操作符
文章目录 TypeScript 特有运算符1. keyof2. typeof3. in4. extends5. is6. as 和 <Type>7. never8. readonly9. ?10. []11. | 和 &12. !13. ?? 和 ?. 总结 TypeScript 特有运算符 1. keyof 作用:用于获取对象类型的所有键(属性名&#x…...
![](https://www.ngui.cc/images/no-images.jpg)
介绍下常用的前端框架及时优缺点
以下是一些常用的前端框架及其优缺点介绍: React • 优点 • 组件化架构:可构建可复用的UI组件,提高开发效率和组件可维护性。 • 虚拟DOM:高效更新页面,减少直接操作DOM的性能开销。 • 灵活性和可扩展性…...
![](https://www.ngui.cc/images/no-images.jpg)
MATLAB算法实战应用案例精讲-【数模应用】图形变换和复杂图形组合(附python和MATLAB代码实现)
目录 前言 算法原理 变换 1二维变换 1.1缩放 1.2 翻转 1.3剪切 1.4 旋转 2齐次坐标 2.1引入齐次坐标的原因 2.2 二维齐次坐标 2.3二维仿射变换 2.4逆变换 4组合变换 5三维变换(由二维变换推理而来) 5.1三维齐次坐标 5.2 三维仿射变换 5.3 缩放和平移 5.4…...
![](https://i-blog.csdnimg.cn/direct/14d5a7d64c554f6a8401966ae78a37f2.png)
SpringMVC 实战指南:打造高效 Web 应用的秘籍
第一章:三层架构和MVC 三层架构: 开发服务器端,一般基于两种形式,一种 C/S 架构程序,一种 B/S 架构程序使用 Java 语言基本上都是开发 B/S 架构的程序,B/S 架构又分成了三层架构三层架构: 表现…...
![](https://www.ngui.cc/images/no-images.jpg)
doris: Flink导入数据
使用 Flink Doris Connector 可以实时的将 Flink 产生的数据(如:Flink 读取 Kafka,MySQL 中的数据)导入到 Doris 中。 使用限制 需要依赖用户部署的 Flink 集群。 使用 Flink 导入数据 使用 Flink 导入数据,详…...
![](https://i-blog.csdnimg.cn/img_convert/394c9cc27da0540afac2baff28937d95.png)
Nginx在Linux中的最小化安装方式
1. 安装依赖 需要安装的东西: wget,方便我们下载Nginx的包。如果是在Windows下载,然后使用SFTP上传到服务器中,那么可以不安装这个软件包。gcc g,Nginx是使用C/C开发的服务器,等一下安装会用到其中的…...
![](https://www.ngui.cc/images/no-images.jpg)
CSS布局新视角:BFC(块级格式化上下文)的作用与优势
在CSS布局的世界中,BFC(Block Formatting Context,块级格式化上下文)是一个既重要又神秘的概念。它不仅是解决复杂布局问题的关键工具,也是提升页面性能和用户体验的重要手段。本文将从新视角出发,深入探讨…...
![](https://img-blog.csdnimg.cn/b92d40571f164afd89ce38f4d556068e.png#pic_center)
PCL K4PCS算法实现点云粗配准【2025最新版】
目录 一、算法原理1、算法概述2、算法流程3、参考文献二、 代码实现1、原始版本2、2024新版三、 结果展示本文由CSDN点云侠原创,原文链接,首发于:2020年4月27日。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的抄袭狗。 博客长期更新,本文最近一次更新时间为…...
![](https://i-blog.csdnimg.cn/img_convert/35a26b815b341ed269097e3674792dfb.png)
02IO篇(D2_深入IO模型)
目录 本章目标 一、用户空间和内核空间 二、PIO与DMA 三、缓存IO和直接IO 1. 缓存IO 2. 直接IO 三、IO访问方式 1. 磁盘IO 2. 网络IO 3. 磁盘IO和网络IO对比 四、Socket网络编程 1. 客户端 2. 服务端 示例一 示例二 示例三 五、同步IO和异步IO 六、阻塞IO和非…...
![](https://i-blog.csdnimg.cn/direct/76b13370e0b54756976d34bf337eacb6.png)
记录一次微信小程序使用云能力开发的过程
对于开发微信小程序云开发不知从何起的同学们,可以当作一次参考。虽说官方有文档,有模板示例,但是这些都是片段或者完整的结果展示。对于初学或者开发经验较少的同学们,可能不知先从那里入手进行第一步的开发。下面解析下构建微信…...
![](https://www.ngui.cc/images/no-images.jpg)
Learning Prompt
说明:这是我的学习笔记,很多内容转自网络,请查阅文章末尾的参考资料。 目录 基本要求(C.R.E.A.T.E)总结文章(Summarise)改写文章(Rewrite)根据参考资料回答问题(Question & Answer)参考资料 基本要求(C.R.E.A.T.E) Character This is th…...
![](https://www.ngui.cc/images/no-images.jpg)
事务处理系统 (Transaction Processing System, TPS)
事务处理系统 (Transaction Processing System, TPS) 是一种专门用于自动化日常业务事务处理的计算机系统。这类系统通常处理大量的结构化数据,如订单处理、支付结算、库存管理等,以支持企业日常的运营和管理。TPS 的核心任务是确保高效、准确地记录和管理大量重复性的事务,…...
![](/images/no-images.jpg)
洛阳bbs/广州seo怎么做
在多线程应用中,所有的线程都是共享资源,线程时并发运行的,此时,就有可能发导致多个线程同时访问操作共享资源。假如有AB两个线程,A线程读共享资源,B线程写共享资源,就会发生A线程读取的共享资源…...
![](/images/no-images.jpg)
网站建设的关键/搜索引擎营销案例分析
Oracle导出空(无数据)表 exp name/pass fileD:/backup.dmp logD:/backup.log;其中table_1中有数据,table_2中没有数据;由于 ORACLE 11g中有个新特性,当表无数据时,不分配segment,以节省空间。所…...
![](/images/no-images.jpg)
盐城个人网站建设/株洲网页设计
线程同步基础 并发场景下,有时我们并不仅仅想保护数据,我们还希望多个线程之间同步某些操作,例如等待某个条件为真或者某个事件发生时执行一些操作。C标准库提供了条件变量(condition variables)和futures;…...
![](/images/no-images.jpg)
用户登录网站开发/网络营销工具
你可以进主板的BIOS里看看 SATA选项里的硬盘模式是不是AHCI模式 如果是就改成IDE应该就可以了 可能你装系统是没有加载AHCI驱动 而现在换电池导致主板BIOS设置里的硬盘模式还原成了AHCI模式开机在系统启动界面就会蓝屏或重启...
![](/images/no-images.jpg)
访问中国建设银行网站/电商平台推广怎么做
BOM要点总结篇 温故而知心!!学到的东东,必须要总结一下,方便自己,巩固自己。今天我为大家总结一下BOM当中的一些要点: 一、Windows对象 1.窗口的操作 windows对象对操作浏览器窗口非常有用。用以下四种方法…...
![](https://img-blog.csdnimg.cn/img_convert/99f60b13d7d35d4f5c1f0b349339c804.png)
装修设计网站哪个好用/万能bt搜索引擎网站
介绍: 使用方法: 源码上传好输入m3u8地址回车即可 接口测试:视频格式基本全部支持在线播放,不仅限于m3u8 使用方法:http://你的域名/?urlm3u8地址 网盘下载地址: http://kekewangLuo.net/sTwxoTBDr4u0 图…...