当前位置: 首页 > 知识库问答 >
问题:

docker for windows和mysql官方容器

邰勇军
2023-03-14

我正在最新的官方MySQL docker容器中运行MySQL。主机是Windows10。

我正在使用“Docker-Compose up MySQL”启动以下服务:

version: '3.4'

services:
  mysql:
    image: mysql/mysql-server:latest
    container_name: sqlstore
    ports:
     - '3306:3306'
    expose:
     - '3306'
    env_file:
     - ./sqlconfig.env  
    volumes:
     - ./data:/var/lib/mysql

我遇到的问题是,当MySQL数据库文件驻留在主机的卷上时,MySQL无法运行,并且我不断收到以下错误消息:“是否您已经有另一个mysqld服务器在套接字上运行:”/var/lib/MySQL/MySQL.sock“”

值得注意的是,我确实确保了该端口没有被其他进程使用,MySQL的文件确实被写入主机上的./data目录。

但是,当MySQL文件不驻留在主机上而是驻留在docker本身内时,一切都能正常运行。

共有1个答案

牟华翰
2023-03-14

我也有同样的问题。如果您使用的是Linux容器,那么这个问题很可能与MySQL容器和Windows主机的文件系统类型不同有关。使用命名卷,即some-data:/var/lib/mysql可能会解决这个问题。工作示例

version: '3.4'

services:
  mysql:
    image: mysql/mysql-server:latest
    container_name: sqlstore
    ports:
     - '3306:3306'
    expose:
     - '3306'
    env_file:
     - ./sqlconfig.env
    volumes:
     - datavol:/var/lib/mysql
volumes:
  datavol:
 类似资料:
  • 问题内容: 我有以下Dockerfile: 我认为第三条线从未到达。 当我尝试通过以下方式从本地计算机访问dockercontainer时:172.17.0.2:9300 我什么也没得到,我想念什么?我想从本地主机访问elasticsearch。 问题答案: 我建议通过以下配置使用docker-compose(这使很多事情变得更加容易)。 配置启动了3个服务:弹性本身和用于开发的额外实用程序,例如

  • PHP 官方网站 PHP 官方文档

  • 最近我在使用JDBC,所有使用JDBC的代码都运行得很好。 过了一段时间,我又开始用JDBC来刷新所有的概念。问题是,当时我写新程序的时候,它给了我ClassNotFoundException。我的代码中的一切都很完美。我还添加了MySQL连接器的外部JAR文件。异常是ClassNotFoundException com . MySQL . JDBC . driver。 我尝试了不同的IDE来运行

  • Termux 有一些额外有趣的功能,我们可以通过安装插件的方式来使用这些功能。网友们反馈 F-Droid 里面的 Termux 插件都是可以免费下载的,唯一的缺点就是可能版本低于 Google Play 的版本,大家自行抉择。 Termux:API Termux:API,可用于访问手机硬件实现更多的友情的功能。官方唯一一个免费的 API,良心啊。 准备工作 安装Termux:API 下载地址 Te

  • demo 默认主题,以 ‘无形’ 代替 ‘有形’,去除冗余的设计元素 dark 暗色主题,基于 PM2 文档 的样式改编

  • 在 buoyant (linkerd的开发者) 的官方网站上,发表有很多和likerd相关的博客文章: https://buoyant.io/blog/ 这里是对官方博客内容的中文翻译版本. 译者注: 这些博客文章对了解 linkerd 非常有帮助,而且从官方文档的写作风格上看,所有涉及到有深度或者需要谈论细节的时候,基本都是给出一个链接指到博客上的某个文章.因此,考虑将官方博客的文章逐一翻译过来