使用TCP从App Engine自定义环境连接到Google Cloud SQL的错误



我正在尝试从App Engine中的自定义运行时环境连接到Google SQL Cloud实例。

当我关注DOC使用Unix域套接字连接时,它可以正常工作。问题是当我尝试使用TCP连接连接时。它显示:

Warning: mysqli_connect(): (HY000/2002): Connection refused in 
/var/www/html/index.php on line 3
Connect error: Connection refused

这是我的app.yaml文件:

runtime: custom
env: flex
beta_settings:
  cloud_sql_instances: testing-mvalcam:europe-west1:testdb=tcp:3306
resources:
  cpu: 1
  memory_gb: 0.5
  disk_size_gb: 10

dockerfile:

FROM php:7.0-apache
ENV PORT 8080
CMD sed -i "s/80/$PORT/g" /etc/apache2/sites-available/000-default.conf /etc/apache2/ports.conf && docker-php-entrypoint apache2-foreground
RUN docker-php-ext-install mysqli
RUN a2enmod rewrite
COPY ./src /var/www/html
EXPOSE $PORT

和index.php:

<?php
$link = mysqli_connect('127.0.0.1', 'root', 'root', 'test');
if (!$link){
    die('Connect error: '. mysqli_connect_error());
}
echo 'successfully connected';
mysqli_close($link);
?>

我在做什么错?

IP地址‘172.17.0.1'与网络服务器正在运行的Docker容器有关,您可以在本文档中获得更多上下文。

如果您使用Dockerfile的存在部署,则您使用的文档页面可能缺乏调整用例。在以下文档中,您可以阅读有关应用引擎灵活运行时的更多信息。

,如您所使用的文档所示(请记住单击此页面上的" TCP连接"选项卡),在app.yaml的部分上与云SQL实例有关需要数据库服务器正在使用的TCP端口。

相关内容

  • 没有找到相关文章

最新更新