赞
踩
docker 部署php项目步骤:
1.docker 安装php docker pull php:5.6-fpm
2.启动php
docker run -d -v /root/nginx/www:/var/www/html -p 9000:9000 --name ryx_php php:5.6-fpm
说明:
-d 让容器在后台运行
-p 添加主机到容器的端口映射
-v /root/nginx/www(服务器目录):/var/www/html(docker挂载目录)
–name ryx_phpfpm : 将容器命名为 ryx_phpfpm
3.服务器创建配置目录
mkdir ~/nginx/conf/conf.d
4.新增配置文件
vim ~/nginx/conf/conf.d/runoob-test-php.conf
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.php index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php$ {
fastcgi_pass php:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/html/$fastcgi_script_name;
include fastcgi_params;
}
}
5.启动nginx(docker pull nginx 不解释)
docker run --name ryx_ngixn -p 8099:80 -d -v /root/nginx/www:/usr/share/nginx/html:ro -v /root/nginx/conf/conf.d:/etc/nginx/conf.d:ro --link ryx_php:php nginx
说明:
-p 8099:80: 端口映射,把 nginx 中的 80 映射到本地的 8099 端口。
~/nginx/www: 是本地 html 文件的存储目录,/usr/share/nginx/html 是容器内 html 文件的存储目录。
~/nginx/conf/conf.d: 是本地 nginx 配置文件的存储目录,/etc/nginx/conf.d 是容器内 nginx 配置文件的存储目录。
--link ryx_php:php: 把 ryx_php 的网络并入 nginx,并通过修改 nginx 的 /etc/hosts,把域名 php 映射成 127.0.0.1,让 nginx 通过 php:9000 访问 php-fpm。
6.在/root/nginx/www目录新增index.php
<?php
echo phpinfo();
?>
// 测试页面
7.直接访问http://192.168.1.59:8099/index.php
进入docker php
docker exec -it php /bin/bash
cd /usr/local/bin
#安装mysql插件
./docker-php-ext-install mysqli
#安装redis
curl -L -o /tmp/redis.tar.gz https://github.com/phpredis/phpredis/archive/3.1.3.tar.gz
tar xfz /tmp/redis.tar.gz
rm -r /tmp/redis.tar.gz
mkdir -p /usr/src/php/ext
docker cp /tmp/phpredis-3.1.3/ ryx_php:/usr/src/php/ext/redis
docker-php-ext-install redis
最终项目效果
http://192.168.1.59:8099/LaiKeAdmin/index.php
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。