1 安装nginx
目录映射 前面为真实目录 后面为docker的虚拟目录
/mnt/sda1/etc/nginx:/etc/nginx/conf.d
/mnt/sda1/www:/www
端口映射 前面为主机端口 后面为docker的端口
88:80
Nginx的配置
这个文件在真实目录 /mnt/sda1/etc/nginx下
default.conf
server {
listen 80;
server_name localhost;
location / {
root /www;
index index.php index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /www/err;
}
location ~ \.php$ {
fastcgi_pass 192.168.6.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /www/$fastcgi_script_name;
include fastcgi_params;
keepalive_timeout 60s;
client_body_timeout 20s;
send_timeout 30s;
}
}
2,安装PHP
端口映射:9000:9000
目录映射:mnt/sda1/www→/www
解决php没有权限的问题 chmod 777 www
如何查找 用户ID号,执行如下命令
cat /etc/passwd
在返回的一堆内容中 在某一行的内容中就会看到你的用户名,在这一航的第3 和 第4 列 就是你的用户ID 和 用户组 ID 我的是 1001
test:x:1001:1001::/home/test:/bin/bash
配置权限
sudo chown -R 1000:1000 /目录
安装php 扩展
进入 php的docker环境
docker exec -it myphpfpm /bin/bash
然后挨个执行命令
此出安装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
mv phpredis-3.1.3 /usr/src/php/ext/redis
docker-php-ext-install redis
安装GD扩展
apt update # 更新软件源
apt install -y libwebp-dev libjpeg-dev libpng-dev libfreetype6-dev # 安装各种库
docker-php-source extract # 解压源码
cd /usr/src/php/ext/gd # 进入gd源码文件夹
# 准备编译
docker-php-ext-configure gd --with-webp-dir=/usr/include/webp --with-jpeg-dir=/usr/include --with-png-dir=/usr/include --with-freetype-dir=/usr/include/freetype2
docker-php-ext-install gd # 编译安装
php -m | grep gd # 检查扩展是否安装成功