Windows Docker Desktop安装及使用 Docker 运行 MySQL

news2025/3/3 17:45:06

Docker Desktop是Docker的官方桌面版,专为Mac和Windows用户设计,提供了一个简单易用的界面来管理和运行Docker容器。它集成了Docker引擎,为开发人员提供了一个快速、可靠、可扩展的方式来构建、运行和管理应用。DockerDesktop的优势在于,它使得在不支持原生Linux容器的操作系统上(如Windows和Mac)安装和运行Docker变得非常简单

需要注意的是,Windows 10 或 Windows 11 专业版或企业版支持运行 Windows 容器,但是 Windows 家庭版或教育版仅支持运行 Linux 容器

一、安装前准备

1、安装 Hyper-V

Hyper-V 是微软开发的虚拟机,类似于 VMWare 或 VirtualBox,仅适用于 Windows 10。这是 Docker
Desktop for Windows 所使用的虚拟机。

但是,这个虚拟机一旦启用,QEMU、VirtualBox 或 VMWare Workstation 15
及以下版本将无法使用!如果你必须在电脑上使用其他虚拟机(例如开发 Android 应用必须使用的模拟器),请不要使用 Hyper-V!

2、开启 Hyper-V 和 适用于 Linux 的 Windows 子系统

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

‌3、检查并开启虚拟化技术‌:通过任务管理器查看CPU的虚拟化功能是否已启用。如果没有启用,需要进入BIOS设置中启用虚拟化技术。

在这里插入图片描述

4、根据系统安装对应的版本docker官网

在这里插入图片描述

如果已开启Hyper-V,却又弹出一个错误弹窗 内容为:Hyper-V hypervisor not present

解决方法:
以管理员身份运行Windows PowerShell
最后重启

bcdedit /set hypervisorlaunchtype auto

在这里插入图片描述

最后打开 Docker Desktop

在这里插入图片描述

二、使用 Docker 运行 MySQL

我们这里选择使用Docker来运行MySQL。这样在 Windows 与 macOS 上,甚至在 Linux 服务器上,它们的运行环境都是一致的。

1、配置中国镜像

Docker运行起来后,也需要配置一下中国镜像,这样它下载速度会快很多。我们找到设置里面的Docker Engine,增加上

"registry-mirrors": [
  "https://docker.hpcloud.cloud",
  "https://docker.m.daocloud.io",
  "https://docker.unsee.tech",
  "https://docker.1panel.live",
  "http://mirrors.ustc.edu.cn",
  "https://docker.chenby.cn",
  "http://mirror.azure.cn",
  "https://dockerpull.org",
  "https://dockerhub.icu",
  "https://hub.rat.dev"
]

在这里插入图片描述

完整配置示例

在这里插入图片描述

2、使用 docker compose

接着进入项目根目录中,新建一个文件,叫做docker-compose.yml。千万要注意,一定要在项目根目录中,放在其他地方会找不到的。然后将下面的配置复制进去,这就是MySQL的一个简单配置了。

services:
  mysql:
    image: mysql:8.3.0
    command:
      --default-authentication-plugin=mysql_native_password
      --character-set-server=utf8mb4
      --collation-server=utf8mb4_general_ci
    environment:
      - MYSQL_ROOT_PASSWORD=xiewei
      - MYSQL_LOWER_CASE_TABLE_NAMES=0
    ports: // 如果有本地Mysql  可以修改端口号:3307:3306
      - "3306:3306"
    volumes:
      - ./data/mysql:/var/lib/mysql

在这里插入图片描述

然后我们开启另一个命令行窗口,一定要确保命令行所在路径,是在当前项目里的。如果不在当前项目里,就自己先通过cd命令进入项目,然后再运行

docker-compose up -d

这样,MySQL就会自动下载好,并启动起来了。

在这里插入图片描述
再看看docker 面板里,也会出现我们的项目了。将来大家想停止,或者再次启动MySQL,也可以使用这里的按钮。

在这里插入图片描述

3、MySQL 客户端

我有本地Mysql 所以我端口更改了成3307 没有就3306
在这里插入图片描述
如果更改了端口 本地配置 也需要调整
在这里插入图片描述

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

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

相关文章

Day21-【软考】短文,计算机网络开篇,OSI七层模型有哪些协议?

文章目录 OSI七层模型有哪些?有哪些协议簇?TCP/IP协议簇中的TCP协议三次握手是怎样的?基于UDP的DHCP协议是什么情况?基于UDP的DNS协议是什么情况? OSI七层模型有哪些? 题目会考广播域 有哪些协议簇&#x…

巧妙获取ListBox控件的选中条目(按点击顺序)

实例需求:用户窗体中有两个控件 列表框:ListBox1,支持多选按钮:CommandButton1 现在需要记录用户在列表框中选择顺序(不考虑选中后再次点击取消选中的操作),如下图所示。 Dim objDic As Objec…

动手学图神经网络(3):利用图神经网络进行节点分类 从理论到实践

利用图神经网络进行节点分类:从理论到实践 前言 在之前的学习中,大家对图神经网络有了初步的了解。本次教程将深入探讨如何运用图神经网络(GNNs)来解决节点分类问题。在节点分类任务里,大家往往仅掌握少量节点的真实…

Level DB --- TableBuilder

TableBuilder是Level DB里面重要的类和模块,它描述了数据如何序列化到文件中,以及数据里面的格式逻辑。它里面包含了之前介绍的多个模块和类。 data block、filter block和index block block格式,之前已经介绍过Level DB --- BlockBuilder-…

Leecode刷题C语言之组合总和②

执行结果:通过 执行用时和内存消耗如下: int** ans; int* ansColumnSizes; int ansSize;int* sequence; int sequenceSize;int** freq; int freqSize;void dfs(int pos, int rest) {if (rest 0) {int* tmp malloc(sizeof(int) * sequenceSize);memcpy(tmp, seque…

Hook 函数

什么是hook函数? 在计算机编程中,hook函数是指在特定的事件发生时被调用的函数,用于在事件发生前或后进行一些特定的操作。通常,hook函数作为回调函数被注册到事件处理器中,当事件发生时,事件处理器会自动…

自然元素有哪些选择?

在设计浪漫风格的壁纸时,自然元素是营造温馨、梦幻氛围的关键。以下是一些常见的自然元素选择,以及它们在壁纸设计中的应用建议: 一、花朵 玫瑰: 特点:玫瑰是浪漫的象征,尤其是红色和粉色玫瑰,…

【miniconda】:langraph的windows构建

langraph需要python3.11 langraph强烈建议使用py3.11 默认是3.12 官方 下载仓库 下载老版本的python (后续发现新版miniconda也能安装老版本的python) 在这里

自动驾驶中的多传感器时间同步

目录 前言 1.多传感器时间特点 2.统一时钟源 2.1 时钟源 2.2 PPSGPRMC 2.3 PTP 2.4 全域架构时间同步方案 3.时间戳误差 3.1 硬件同步 3.2 软件同步 3.2.3 其他方式 ① ROS 中的 message_filters 包 ② 双端队列 std::deque 参考: 前言 对多传感器数据…

【蓝桥杯】43692.青蛙跳杯子

题目描述 X 星球的流行宠物是青蛙,一般有两种颜色:白色和黑色。 X 星球的居民喜欢把它们放在一排茶杯里,这样可以观察它们跳来跳去。 如下图,有一排杯子,左边的一个是空着的,右边的杯子,每个…

[Dialog屏幕开发] 屏幕绘制(下拉菜单)

阅读该篇文章之前,可先阅读下述资料 [Dialog屏幕开发] Table Control 列数据操作https://blog.csdn.net/Hudas/article/details/145343731?spm1001.2014.3001.5501上篇文章我们的屏幕已实现了如下功能 我们已经设置了按钮对Table Control 列的数据进行了操作 接下…

AIGC视频生成模型:慕尼黑大学、NVIDIA等的Video LDMs模型

大家好,这里是好评笔记,公主号:Goodnote,专栏文章私信限时Free。本文详细介绍慕尼黑大学携手 NVIDIA 等共同推出视频生成模型 Video LDMs。NVIDIA 在 AI 领域的卓越成就家喻户晓,而慕尼黑大学同样不容小觑,…

JVM常见知识点

在《深入理解Java虚拟机》一书中,介绍了JVM的相关特性。 1、JVM的内存区域划分 在真实的操作系统中,对于地址空间进行了分区域的设计,由于JVM是仿照真实的机器进行设计的,那么也进行了分区域的设计。核心区域有四个,…

类和对象(4)——多态:方法重写与动态绑定、向上转型和向下转型、多态的实现条件

目录 1. 向上转型和向下转型 1.1 向上转型 1.2 向下转型 1.3 instanceof关键字 2. 重写(overidde) 2.1 方法重写的规则 2.1.1 基础规则 2.1.2 深层规则 2.2 三种不能重写的方法 final修饰 private修饰 static修饰 3. 动态绑定 3.1 动态绑…

系统思考—问题分析

很多中小企业都在面对转型的难题:市场变化快,资源有限,团队协作不畅……这些问题似乎总是困扰着我们。就像最近和一位企业主交流时,他提到:“我们团队每天都很忙,但效率始终没见提升,感觉像是在…

Midscene.js:重新定义UI自动化的新时代工具

前言 Midscene.js 是一个创新的、面向开发者的 UI 自动化解决方案,并通过人工智能技术简化自动化脚本的编写与维护。 它提供了三种核心方法——交互(.ai, .aiAction)、提取(.aiQuery)和断言(.aiAssert&am…

go单元测试和基准测试

1、单元测试和基准测试 单元测试和基准测试代码开发中的重要环节,良好的单元测试和基准测试,能提升开发质量,对整体开发有非常重要的重要,下面介绍单元测试和基准测试的写法。 2、单元测试和基准测试写法 以排序基本排序算法&a…

Nuxt:利用public-ip这个npm包来获取公网IP

目录 一、安装public-ip包1.在Vue组件中使用2.在Nuxt.js插件中使用public-ip 一、安装public-ip包 npm install public-ip1.在Vue组件中使用 你可以在Nuxt.js的任意组件或者插件中使用public-ip来获取公网IP。下面是在一个Vue组件中如何使用它的例子&#xff1a; <template…

day7手机拍照装备

对焦对不上&#xff1a;1、光太暗&#xff1b;2、离太近&#xff1b;3、颜色太单一没有区分点 滤镜可以后期P 渐变灰滤镜&#xff1a;均衡色彩&#xff0c;暗的地方亮一些&#xff0c;亮的地方暗一些 中灰滤镜&#xff1a;减少光差 手机支架&#xff1a;最基本70cm即可 手…

LLM - 大模型 ScallingLaws 的指导模型设计与实验环境(PLM) 教程(4)

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/145323420 免责声明&#xff1a;本文来源于个人知识与公开资料&#xff0c;仅用于学术交流&#xff0c;欢迎讨论&#xff0c;不支持转载。 Scalin…