使用docker-compose安装php+nginx+redis

要在Docker上部署PHP 7.0、Redis 6和Nginx,你可以按照以下步骤进行操作:

1. 首先,安装Docker和Docker Compose,确保你的系统上已经安装了它们。

2. 创建一个新的项目目录,在该目录下创建一个名为`docker-compose.yml`的文件。

3. 打开`docker-compose.yml`文件,并添加以下内容:

version: '3'
services:
  nginx:
    image: nginx
    ports:
      - 8100:80
    volumes:
      - ~/docker/nginx/conf.d/nginx.conf:/etc/nginx/nginx.conf
      - ~/docker/www:/var/www/html
    dns:
      - 8.8.8.8
      - 8.8.4.4
    depends_on:
      - php
  php:
    build:
      context: .
      dockerfile: Dockerfile
    volumes:
      - ~/docker/www:/var/www/html
    dns:
      - 8.8.8.8
      - 8.8.4.4
    depends_on:
      - redis
  redis:
    image: redis:6.2
    dns:
      - 8.8.8.8
      - 8.8.4.4

上述配置使用了Nginx官方的Docker镜像和Redis 6的Docker镜像。它创建了三个服务:`nginx`、`php`和`redis`。

4. 在项目目录下创建一个名为`nginx.conf`的文件,用于配置Nginx。在该文件中,你可以根据自己的需求进行配置。以下是一个基本的示例:

worker_processes 1;

events {
    worker_connections 1024;
}

http {
    server {
        listen 80;
        root /var/www/html;
        index index.php index.html;

        location / {
            try_files $uri $uri/ /index.php?$query_string;
        }

        location ~ \.php$ {
            fastcgi_pass php:9000;
            fastcgi_index index.php;
            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        }
    }
}

上述配置将所有对根URL的请求都转发到`index.php`文件,并将PHP文件的处理转发到`php`服务的`9000`端口。

5. 在项目目录下创建一个名为`Dockerfile`的文件,用于构建自定义的PHP镜像。以下是一个基本的示例:

FROM php:7.0-fpm

RUN docker-php-ext-install pdo_mysql

WORKDIR /var/www/html

CMD ["php-fpm"]

上述Dockerfile基于`php:7.0-fpm`镜像,安装了`pdo_mysql`扩展,并将工作目录设置为`/var/www/html`。

6. 确保你的项目目录下有一个名为`html`的文件夹,用于存放PHP应用程序的代码文件。

7. 打开终端或命令提示符,导航到项目目录,然后运行以下命令启动Docker容器:

docker-compose up -d

这将根据`docker-compose.yml`文件中的配置启动Nginx、PHP和Redis容器。

现在,你的PHP 7.0、Redis 6和Nginx环境已经在Docker中成功部署了。你可以将你的PHP应用程序代码放置在项目目录下的`html`文件夹中,并通过浏览器访

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值