Mura CMS / Docker Compose 连接到数据库

Mura CMS / Docker Compose Connect to Database

我是 运行 一个 Mura CMS 实例,使用 docker 撰写(使用 config/docker/local-mysql/docker-compose.yml)并收到以下错误:

500 Error

Error Executing Database Query.

Datasource:nodatabase

SQL:SELECT IF('muradb' IN(SELECT SCHEMA_NAME FROM INFORMATION_SCHEMA.SCHEMATA), 1, 0) AS found 

Code:n/a

Type:Database

Timed out trying to establish connection

这是我的 Docker-compose.yml 的副本,这是 Blue River 随 Mura 分发的标准 yml 文件。除了从8080端口改成80端口外,没有修改。

version: '2.1'

services:
  #Mura Server
  mura_mysql_cfml:
    image: ortussolutions/commandbox:latest
    environment:
      PORT: 80
      SSL_PORT: 8443
      CFENGINE: adobe@2016
      CFCONFIG_ADMINPASSWORD: NOT_SECURE_CHANGE
      MURA_ADMIN_USERNAME: admin
      MURA_ADMIN_PASSWORD: admin
      MURA_ADMINEMAIL: example@localhost.com
      MURA_APPRELOADKEY: appreload
      MURA_DATASOURCE: muradb
      MURA_DATABASE: muradb
      MURA_DBTYPE: mysql
      MURA_DBUSERNAME: root
      MURA_DBPASSWORD: NOT_SECURE_CHANGE
      MURA_DBHOST: mura_mysql
      MURA_DBPORT: 3306
      MURA_SITEIDINURLS: "false"
      MURA_INDEXFILEINURLS: "false"
      MURA_TESTBOX: "true"
    volumes:
        - ../../../:/app
    ports:
        - "80:80"

  #MySQL
  mura_mysql:
    image: mysql:latest
    environment:
        MYSQL_ROOT_PASSWORD: NOT_SECURE_CHANGE
        MYSQL_DATABASE: muradb
    volumes:
        - mura_mysql_data:/var/lib/mysql
    ports:
        - "55555:3306"

volumes:
    mura_mysql_data:

有什么可能出错的想法吗?

出于某种原因,您的 docker 堆栈中的 Web 服务器无法访问 mysql 服务器。

您如何执行 docker-compose? 如果您在 Mura 中尝试其他 docker-compose 文件,您会得到不同的结果吗?

另外,你试过安装Kitematic吗?它提供了大量关于 docker 容器和图像的视觉数据。

您的问题是您在 docker-compose.yml 文件中修改了 ports

左侧是 host ... 或您的 local 机器。右边是容器的网络端口,你不应该改变。所以,在mura_mysql_cfml服务下试试:

ports:
    - "80:8080"

此外,在 environment: 设置下,我会完全忽略 PORT: 80 环境变量。原因是因为该端口未在底层 Docker 映像中公开。


编辑:

此外,我刚刚注意到您没有使用默认图片。这很关键!您尝试使用的图像中甚至没有 Mura CMS。这意味着您必须提供它,或者将它作为一个卷安装到 /app 目录中。

巧合的是,我正在为像您这样的用户整理一些示例图像和 docker-compose.yml 文件。它仍在进行中,但我认为您无论如何都应该看看存储库: https://github.com/blueriver/docker-muracms

希望对您有所帮助!