Durpal 8的目录结构:
.
├── docker-compose.yml
├── dump
│ └── drupal.sql
├── sessions
└── www
└── core
└── site
└── modules
└── vendor
└── index.php
我的settings.php数据库配置
$databases['default']['default'] = array (
'database' => 'drupal',
'username' => 'root',
'password' => 'test',
'prefix' => '',
'host' => '127.0.0.1',
'port' => '3306',
'namespace' => 'Drupal\\Core\\Database\\Driver\\mysql',
'driver' => 'mysql',
);
我的docker-compose.yml代码
version: "2"
services:
www:
image: drupal:8
ports:
- "8001:80"
volumes:
- ./www:/var/www/html/
depends_on:
- db
networks:
- default
db:
image: mysql:latest
command: --default-authentication-plugin=mysql_native_password
ports:
- "3306:3306"
environment:
MYSQL_DATABASE: drupal
MYSQL_USER: user
MYSQL_PASSWORD: test
MYSQL_ROOT_PASSWORD: test
volumes:
- ./dump:/docker-entrypoint-initdb.d
- /var/lib/mysql
networks:
- default
phpmyadmin:
image: phpmyadmin/phpmyadmin
links:
- db:db
ports:
- 8000:80
environment:
PMA_HOST: db
MYSQL_USER: user
MYSQL_PASSWORD: test
MYSQL_ROOT_PASSWORD: test
使用上面的代码,我能够将phpmyadmin连接到mysql,并且工作正常,但是我无法将Drupal连接到mysql,并且出现以下错误:
PDOException:79#0/var/www/html/core/lib/Drupal/Component/DependencyInjection/PhpArrayContainer.php行上的/var/www/html/core/lib/Drupal/core/Database/Driver/mysql/Connection.php(420):PDO中的SQLSTATE[HY000][2002]连接被拒绝-
替换loca ip地址
'host' => '127.0.0.1',
按服务docker名称
'host' => 'db',
我想您应该将数据库连接指向在docker compose文件中创建的主机名。注册时不能是本地主机地址:
$databases['default']['default'] = array (
'database' => 'drupal',
'username' => 'root',
'password' => 'test',
'prefix' => '',
'host' => 'db', #here you point to the container's service name
'port' => '3306',
'namespace' => 'Drupal\\Core\\Database\\Driver\\mysql',
'driver' => 'mysql',
);
因此,在生成AWS SAM模板“web后端”lambda后,我的函数不会连接到我的dynamodb docker实例。 这是我正在使用的JavaScript代码: 在我的终端上运行: 命中生成的endpoint终端给出错误信息: 如果我试着通过邮递员打发电机,我会得到: 所以dynamodb服务器正在运行,因为我可以通过noSQL工作台连接到它,但是我的假设是sam本地api的docker容器看不
我有一个文件,其中包含用于、、和的服务: 当我运行并访问时,我会看到界面。当我尝试以或作为主机名,以作为端口创建一个新服务器时,我得到一个错误“Could not connect to server”。如果我删除这些,而是在“service”字段中输入,我会得到错误“definition of service”postgres“not found”。如何使用连接到数据库?
我有 3 个码头工人撰写文件。一个启动Kafka,另外两个是消费者和生产者。在 kafka 中添加了其他 docker 撰写文件中的external_links,但仍然无法从容器内部访问 kafka。从容器外部,我可以通过 localhost:9092 访问,但是在 docker 容器内部呢?
我拉出了mysql docker映像,并用命令运行容器: 此时,springBoot在本地工作。它与MySQL连接: 现在,我希望springBoot应用程序也在单独的docker容器上,在同一服务器上。为此,我使用了DockerFile: 同样,它无法连接到数据库:
问题内容: 我有一个数据容器,该容器具有其他容器使用的卷(–volumes-from)。 数据容器被意外删除。 幸运的是,该卷没有删除。 有什么方法可以重新运行数据容器并将其指向该卷? 问题答案: 有什么方法可以重新运行数据容器并将其指向该卷? 当然,我在“如何从已删除的Docker容器中恢复数据?如何将其重新连接到数据?”中对此进行了详细说明。 您需要使用相同的VOLUME创建一个新容器(但 *
我有一个数据容器,它有一个被其他容器使用的卷(-volumes from)。 数据容器意外被删除。 谢天谢地,卷没有被删除。 有什么方法可以重新运行数据容器并将其指向此卷?