0

我正在使用 docker compose 运行 Mura CMS 实例(使用 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:

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

4

2 回答 2

0

您的问题是您portsdocker-compose.yml文件中修改的位置。

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

ports:
    - "80:8080"

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


编辑:

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

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

希望这可以帮助!

于 2017-10-12T14:34:48.897 回答
-1

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

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

另外,您是否尝试过安装 Kitematic?它提供了大量关于 docker 容器和图像的可视化数据。

于 2017-10-12T03:37:33.557 回答