mariadb 连接 php,php-从Docker容器使用localhost连接到MariaDB

首先,我确实阅读了那些链接

但是作为docker的初学者.它没有帮助我.

您需要了解的内容:

>是的,我需要本地主机.我正在开发一个可以交互的应用程序

直接与数据库.它创建/删除用户权限,并

允许某些用户从远程以有限的权限访问

访问.初始化后,该应用程序将放弃对root和伪造用户的默认远程访问,并授予他们对localhost的完全特权.

>我正在使用https://phpdocker.io生成的docker-compose.yml

> Ubuntu 18.10

> Docker版本18.09.3,内部版本774a1f4

> docker-compose版本1.21.0,版本未知

>我仅将docker用于开发目的.在生产中,我使用forge

./docker-compose.yml

###############################################################################

# Generated on phpdocker.io #

###############################################################################

version: "3.1"

services:

mailhog:

image: mailhog/mailhog:latest

container_name: myapp-mailhog

ports:

- "8081:8025"

redis:

image: redis:alpine

container_name: myapp-redis

mariadb:

image: mariadb:10.4

container_name: myapp-mariadb

working_dir: /application

volumes:

- .:/application

environment:

- MYSQL_ROOT_PASSWORD=root

- MYSQL_DATABASE=myapp

- MYSQL_USER=forge

- MYSQL_PASSWORD=forge

ports:

- "8083:3306"

webserver:

image: nginx:alpine

container_name: myapp-webserver

working_dir: /application

volumes:

- .:/application

- ./phpdocker/nginx/nginx.conf:/etc/nginx/conf.d/default.conf

ports:

- "8080:80"

php-fpm:

build: phpdocker/php-fpm

container_name: myapp-php-fpm

working_dir: /application

volumes:

- .:/application

- ./phpdocker/php-fpm/php-ini-overrides.ini:/etc/php/7.3/fpm/conf.d/99-overrides.ini

./phpdocker/nginx/nginx.conf

server {

listen 80 default;

client_max_body_size 108M;

access_log /var/log/nginx/application.access.log;

root /application/public;

index index.php;

if (!-e $request_filename) {

rewrite ^.*$/index.php last;

}

location ~ \.php${

fastcgi_pass php-fpm:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

fastcgi_param PHP_VALUE "error_log=/var/log/nginx/application_php_errors.log";

fastcgi_buffers 16 16k;

fastcgi_buffer_size 32k;

include fastcgi_params;

}

}

./phpdocker/php-fpm/Dockerfile(稍作修改以添加mysql_client而不在第二个RUN命令中安装git)

FROM phpdockerio/php73-fpm:latest

WORKDIR "/application"

# Fix debconf warnings upon build

ARG DEBIAN_FRONTEND=noninteractive

# Install selected extensions and other stuff

RUN apt-get update \

&& apt-get -y --no-install-recommends install \

php7.3-mysql php-redis php7.3-sqlite3 php-xdebug php7.3-bcmath php7.3-bz2 php7.3-gd \

git \

mysql-client \

&& apt-get clean; rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/*

./php-ini-overrides.ini

upload_max_filesize = 100M

post_max_size = 108M

我尝试使用network_mode:host,但它使Web服务器停止在1号出口处

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值