windows下docker使用笔记

目录

镜像的配置

镜像的拉取

推荐镜像源列表(截至2025年2月测试有效) 

配置方法

修改容器名字

如何使用卷

创建不同的容器,每个容器中有不同的mysql和java版本(不推荐)

1. 安装 Docker Desktop(Windows)

2. 启用 WSL 2(Windows Subsystem for Linux 2)

3. 拉取 MySQL 和 Java 镜像

4. 创建并启动容器

5. 使用 Docker Compose(Windows)

总结

但是上面的做法是不推荐的

使用Navicat连接docker中的MySQL8

docker中MySQL数据库的导出和恢复

导出 MySQL 数据库并发送给别人

在别人容器中恢复数据库

演示

使用卷(volumes)来持久化数据

示例:如何持久化数据库数据

你可以查看这些卷:

如何避免自动卷?


镜像的配置

这是我的

"registry-mirrors": [
    "https://你的id.mirror.aliyuncs.com",
    "https://mirror.ccs.tencentyun.com",
    "http://hub-mirror.c.163.com",
    "https://registry.docker-cn.com"
  ]

镜像的拉取

根据2025年2月的最新测试结果,以下是国内可用的Docker镜像加速源推荐列表,这些镜像源在速度和稳定性方面表现较好,适合替代默认的Docker Hub以提升镜像拉取效率:


推荐镜像源列表(截至2025年2月测试有效) 

  1. docker.m.daocloud.io

    • DaoCloud 提供的官方镜像加速服务,覆盖主流镜像,拉取速度快且稳定性高。

  2. docker-0.unsee.tech

    • 社区维护的镜像站,实测拉取时间约8.77秒,适合基础镜像加速。

  3. docker.1ms.run

    • 毫秒级响应,适合对速度要求较高的场景,拉取时间约10.70秒。

  4. func.ink

    • 快速且稳定,拉取时间仅8.32秒,适合高频使用1。

  5. docker.imgdb.de

    • 德国镜像站的中国节点,支持多类镜像,同步速度较快。

  6. docker.hlmirror.com

    • 国内社区维护,实测拉取时间约14.16秒,支持主流镜像。

  7. docker.zhai.cm

    • 个人开发者维护,拉取时间约8.89秒,适合轻量级镜像。

  8. fast360.xyz

    • 企业级镜像加速服务,响应速度快,适合大型镜像。

  9. lispy.org

    • 社区推荐,拉取时间约14.09秒,支持多种公共镜像。

  10. 中国官方镜像:https://registry.docker-cn.com
    网易163镜像:http://hub-mirror.c.163.com
    中科大镜像:https://docker.mirrors.ustc.edu.cn
    阿里云镜像:https://[xxx].mirror.aliyuncs.com


配置方法

  1. 永久配置(推荐)
    修改 Docker 的配置文件 daemon.json,添加多个镜像源以提升容错性:

      "registry-mirrors": [
        "https://docker.m.daocloud.io",
        "https://docker-0.unsee.tech",
        "https://docker.1ms.run",
        "https://func.ink",
        "https://docker.imgdb.de"
      ]
    
  2. 临时使用
    在拉取命令中直接指定镜像源地址(无需 https:// 前缀):

    docker pull docker.m.daocloud.io/hello-world:latest

注意事项

  1. 镜像同步延迟
    部分镜像源可能未同步最新镜像(如阿里云镜像站),若拉取失败可切换其他源。

  2. 地区限制
    某些镜像源可能受地区网络影响(如企业内网限制),建议结合本地网络环境测试。

  3. 服务波动
    社区维护的镜像源可能存在不稳定性,推荐配置多个备用地址。

  4. 验证配置是否生效
    执行 docker info,若输出中显示 Registry Mirrors 列表,则配置成功。


性能测试建议

  • 使用 time 命令对比镜像拉取速度:

    time docker pull hello-world:latest
  • 移除本地缓存后测试,结果更准确。

修改容器名字

Docker Desktop 界面本身没有直接修改容器名字的选项,但你可以通过以下步骤来完成:

步骤:

  1. 停止容器: 首先,确保容器处于停止状态。在 Docker Desktop 界面,找到 quizzical_brattai 容器,点击右侧的 "Stop" 按钮停止该容器。

  2. 重命名容器: 打开 Docker Desktop 中的 Terminal 或者使用命令行,输入以下命令来重命名容器,假设你想把 quizzical_brattai 容器改名为 new-hello-world,命令应该是:

    docker rename quizzical_brattai new-container-name
  3. 启动容器: 重命名容器后,你可以重新启动它。在 Docker Desktop 界面中,找到该容器,点击 "Start" 按钮。

注意:

  • 容器重命名不会改变容器的功能或配置,它只是更改容器的名称。
  • 容器的镜像 (hello-world) 不会改变,因为镜像和容器是不同的概念。你可以用相同的镜像启动多个容器,只需要不同的容器名称。

如何使用卷

卷(volumes)主要用于数据持久化和容器之间的数据共享。容器在运行时会创建文件系统,但这些文件系统是临时的,容器停止后数据会丢失。而卷提供了一种方式,让你能够在容器和主机之间持久化数据,并且容器之间也可以共享这些数据。

在Docker中,卷可以通过以下几种方式进行使用:

  • 命令行创建和使用卷:可以通过 docker volume create 命令创建卷,使用时通过 -v 参数将卷挂载到容器中。

    示例:

    docker volume create myvolume
    docker run -d -v myvolume:/data mycontainer
    
  • 将主机目录挂载为卷:除了使用 Docker 管理的卷,还可以将主机的某个目录直接挂载到容器中,这对于开发和调试非常方便。

    示例:

    docker run -d -v C:\path\to\host\folder:/data mycontainer
    

总之,Docker中的卷是一种非常重要的功能,能够保证数据的持久性,并提高容器的可移植性和灵活性。

### 如何在Docker容器中访问和使用笔记本电脑内置摄像头 为了使Docker容器能够访问主机上的硬件设备,比如笔记本电脑的内置摄像头,通常需要确保几个方面配置正确。这不仅涉及到了解如何启动具有适当权限的容器,还涉及到宿主机上必要的驱动程序和支持。 #### 启动带有USB支持的Docker容器 为了让Docker容器可以访问外部设备如摄像头,在创建或运行容器时需指定`--privileged=true`选项来赋予更高的权限[^3]。然而更推荐的做法是指定具体的设备而不是给予整个特权模式: ```bash docker run -it --device=/dev/video0:/dev/video0 ubuntu bash ``` 这条命令中的`/dev/video0`代表的是Linux系统下第一个检测到的视频捕捉设备(即摄像头)。如果不确定具体路径可以在宿主机执行`v4l2-ctl --list-devices`查看所有可用视频设备及其对应的节点名称。 对于某些情况可能还需要安装额外软件包以便于操作这些多媒体资源,例如FFmpeg用于处理音视频流数据或是VLC player作为播放工具等。 #### 配置Docker守护进程以允许USB设备传递 有时即使指定了特定设备文件也未必能成功获取图像帧序列,这时就需要进一步调整Docker Daemon配置使其接受来自USB接口的数据传输请求。编辑位于/etc/docker/daemon.json内的JSON对象加入如下字段: ```json { "default-ulimits": { "nofile": {"Name":"nofile","Hard":65535,"Soft":65535} }, "features": {"apparmor":false}, "insecure-registries":["localhost:5000"] } ``` 请注意上述设置可能会降低安全性因此仅建议开发测试环境中应用;生产环境应谨慎评估风险后再做决定。 另外值得注意的一点是在Windows或者macOS平台上由于架构差异实现方式会有所不同,这里主要讨论基于Linux系统的方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

smx6666668

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值