首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >码头工人+ nginx +苗条

码头工人+ nginx +苗条
EN

Stack Overflow用户
提问于 2022-03-02 20:08:28
回答 1查看 626关注 0票数 -1

我是码头的新用户。我想做的是(在我的Windows PC上)安装带有nginx服务器和这个服务器上的瘦框架的Docker平台,这样我就能够“托管”一个简单的"hello world“页面。我的问题是:我是否应该创建一个包含Nginx的容器,并在该容器中安装Slim框架?或者我应该创建两个不同的容器(一个用于Nginx,一个用于Slim)。如果是的话,这两个人是如何沟通的?

无论如何,不管解决方案是什么,首先我想了解这个“构建”的“体系结构”,然后是如何实现它。

提前感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-03-02 20:22:41

您可以使用两个容器来连接瘦和nginx,如下所示:

docker-compose.yaml

代码语言:javascript
复制
version: "3.8"

services:
  php:
    container_name: slim
    build:
      context: ./docker/php
    ports:
      - '9000:9000'
    volumes:
      - .:/var/www/slim_app

  nginx:
    container_name: nginx
    image: nginx:stable-alpine
    ports:
      - '80:80'
    volumes:
      - .:/var/www/slim_app
      - ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf
    depends_on:
      - php

./docker/php中的DOCKERFILE

代码语言:javascript
复制
FROM php:7.4-fpm

RUN docker-php-ext-install ALL_YOUR EXTENSIONS

WORKDIR /var/www/slim_app

RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer

/docker/nginx/default.conf中的Docker

代码语言:javascript
复制
server {

    listen 80;
    index index.php;
    server_name localhost;
    root /var/www/slim_app/public;

    location / {
        try_files $uri /index.php$is_args$args;
    }

    location ~ ^/index\\.php(/|$) {
        fastcgi_pass php:9000;
        fastcgi_split_path_info ^(.+\\.php)(/.*)$;        
        internal;
    }

    location ~ \\.php$ {
        return 404;
    }

}

只需执行容器docker-compose up -d转到http://localhost/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71328569

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档