默认 laravel sail 项目中的 dockerfile 位于何处

Where is dockerfile located in default laravel sail project

使用 laravel sail 文档构建 laravel 项目。正如 docker-compose.yml 文件中提到的那样,它提到了 docker 文件:Dockerfile。但是它不在根文件夹中,那么它在哪里呢?

# For more information: https://laravel.com/docs/sail
version: '3'
services:
    laravel.test:
        build:
            context: ./vendor/laravel/sail/runtimes/8.1
            **dockerfile: Dockerfile**
            args:
                WWWGROUP: '${WWWGROUP}'
        image: sail-8.1/app
        extra_hosts:
            - 'host.docker.internal:host-gateway'
        ports:
            - '${APP_PORT:-80}:80'
        environment:
            WWWUSER: '${WWWUSER}'
            LARAVEL_SAIL: 1
            XDEBUG_MODE: '${SAIL_XDEBUG_MODE:-off}'
            XDEBUG_CONFIG: '${SAIL_XDEBUG_CONFIG:-client_host=host.docker.internal}'
        volumes:
            - '.:/var/www/html'
        networks:
            - sail
        depends_on:
            - mysql
            - redis
            - meilisearch
            - selenium

它位于 context 的路径:./vendor/laravel/sail/runtimes/8.1/Dockerfile

参见:https://github.com/laravel/sail/blob/1.x/runtimes/8.1/Dockerfile

要在您的应用程序中自定义 Dockerfile,您可以使用以下命令在您的应用程序目录中发布供应商文件:

sail artisan sail:publish

更多信息请参阅:https://laravel.com/docs/9.x/sail#sail-customization