docker安装php nginx mysql容器化记录
docker安装php nginx mysql容器化记录
建议第一步应该先安装mysql,因为后面的php很可能是需要连接mysql的,然后nginx是需要转发.php文件给php-fpm的
新建nginx的配置文件 /root/website/nginx/conf/conf.d/www.conf
server {
listen 80;
server_name localhost;
#charset koi8-r;
root /root/website/daozhao.com;
index index.html index.htm index.php;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
root /root/website/daozhao.com;
#fastcgi_pass unix:/sock/www.sock; // 需要用sock连接时使用
fastcgi_pass php:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /www/$fastcgi_script_name;
#fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; // 不可用$document_root
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
include fastcgi_params;
index index.html index.php;
}
b内部分容后面会讲到
docker安装mysql
docker run -p 13306:3306 --name my_mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql
docker安装php
将php的端口号和sock都暴露个宿主机
docker run --name my_php-fpm -p 19000:9000 -v /sock:/usr/local/var/run -v /root/website/xxx:/www --link my_mysql:mysql -d php:7.4.13-fpm
--link my_mysql:mysql
: 把 my_mysql 的网络并入 php,并通过修改 php 的 /etc/hosts,把域名 my_mysql 映射成 127.17.0.4,让 php 通过mysql:3306(类似127.0.0.1:3306) 访问 mysql。
如果
docker安装nginx
docker run --name my_php_nginx -p 8080:80 -v /root/website/www:/usr/share/nginx/html -v /root/website/nginx/conf/conf.d:/etc/nginx/conf.d --link my_php-fpm:php -d nginx
效果类似,方便通过php:9000访问php-fpm,如上述/root/website/nginx/conf/conf.d/www.conf 文件所示
验证效果 新建phpinfo.php
<?php
echo phpinfo();
?>
推荐启动顺序
根据依赖关系确定先后顺序 mysql -> php -> nginx
相关文章
php连接access数据库的两种方法
第一种方法 <?php //读取mdb数据库的值,创建ADO连接 $username =1; $conn = new com("ADODB.Connection"); 阅读更多…
Mysql报错“this is incompatible with sql_mode=only_full_group_by”
由于本站使用的是msyql8.x版本的mysql数据库,版本较高,发现网站的“月份存档”的数据不展示了,经过排查发现是接口未能如期返回的数据,而是出现了报错“this is incompatible 阅读更多…
Ubuntu建立PHP服务器(apache+php+mysql+phpmyadmin)
Ubuntu建立LAMP(apache+php+mysql+phpmyadmin) Ubuntu安装配置LAMP WEB服务器最详细和全面的方法: 一.安装 1.安装LAMP 在新立得软件包 阅读更多…
mysql 关闭3306端口对外开放服务
我们都知道mysql的默认端口就是3306,一般默认是对外开放的,也就是可以通过ip + 端口的访问直接远程访问,这样是有安全隐患,类似百度云观察这样的服务扫描到的话就会把这当成安全隐患提示站长。 阅读更多…
WordPress上传图片出现“图像后期处理失败,请将其缩小到2500像素并重新上传”
今天在上传图片的时候发现了这个报错“图像后期处理失败,请将其缩小到2500像素并重新上传”,如果是英文版的话,就会报错“Post-processing of the image failed. If 阅读更多…