Sign inSign up

ariaieboy/sail-runtime-image

By ariaieboy

•Updated about 1 month ago

Pre-built Laravel Sail Runtimes

Image
1

50K+

ariaieboy/sail-runtime-image repository overview

⁠Sail Runtime Image

Ariaieboy Sail Runtime Image One of the Laravel Sail problems is the build step. Depending on your network and machine power, it might take a while to build the image locally. You can remove the build step by using our Pre-built images.

⁠Available Tags

TagsDescriptionPostgres-client
8.0,8.0-20PHP 8.0, Node 2015
8.0-18PHP 8.0, Node 1815
8.1,8.1-20PHP 8.1, Node 2015
8.1-18PHP 8.1, Node 1815
8.2,8.2-20PHP 8.2, Node 2015
8.2-18PHP 8.2, Node 1815
8.3,8.3-20PHP 8.3, Node 2016
8.3-18PHP 8.3, Node 1816

⁠Usage

After installing laravel-sail⁠ you must remove the build step:

services:
    laravel.test:
-        build:
-            context: ./vendor/laravel/sail/runtimes/8.2
-            dockerfile: Dockerfile
-            args:
-                WWWGROUP: '${WWWGROUP}'
        image: sail-8.2/app
        extra_hosts:
            - 'host.docker.internal:host-gateway'
        ports:
            - '${APP_PORT:-80}:80'
            - '${VITE_PORT:-5173}:${VITE_PORT:-5173}'
        environment:
            WWWUSER: '${WWWUSER}'
            LARAVEL_SAIL: 1
            XDEBUG_MODE: '${SAIL_XDEBUG_MODE:-off}'
            XDEBUG_CONFIG: '${SAIL_XDEBUG_CONFIG:-client_host=host.docker.internal}'

Then you need to change the image to ariaieboy/sail-runtime-image:version the version can be 7.4,8.0,8.1,8.2:

services:
    laravel.test:
+       image: ariaieboy/sail-runtime-image:8.2
        extra_hosts:
            - 'host.docker.internal:host-gateway'
        ports:
            - '${APP_PORT:-80}:80'
            - '${VITE_PORT:-5173}:${VITE_PORT:-5173}'
        environment:
+           WEBSERVER: cli
+           WWWGROUP: '${WWWGROUP}'
            WWWUSER: '${WWWUSER}'
            LARAVEL_SAIL: 1
            XDEBUG_MODE: '${SAIL_XDEBUG_MODE:-off}'
            XDEBUG_CONFIG: '${SAIL_XDEBUG_CONFIG:-client_host=host.docker.internal}'

The final laravel.test service should look like this:

services:
  laravel.test:
    image: ariaieboy/sail-runtime-image:8.2
    extra_hosts:
      - 'host.docker.internal:host-gateway'
    ports:
      - '${APP_PORT:-80}:80'
      - '${VITE_PORT:-5173}:${VITE_PORT:-5173}'
    environment:
      WEBSERVER: cli
      WWWUSER: '${WWWUSER}'
      WWWGROUP: '${WWWGROUP}'
      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

⁠Customize Webserver

Our images support 3 Separate web server that you can choose from by setting the environment value of WEBSERVER in your laravel service in the docker-compose file:

⁠cli (default)

This option uses the default php artisan serve supervisor conf from the laravel-sail repo.

⁠octane

This option uses php artisan octane:serve and will serve your application using octane instead of the built-in php artisan serve

⁠octane-watch

This option uses octane webserver with --watch option.

⁠Difference with laravel-sail runtimes

⁠Pros
  • It's Pre-built and you only need to pull it from docker hub.
  • It supports 3 different Webserver without needing to change the image and rebuild it.
  • Additional packages installed including libavif-bin pnpm svgo libheif-dev jpegoptim optipng pngquant gifsicle
  • It will update weekly at 00:00 on Wednesday
⁠cons
  • It's not as customizable as laravel-sail if you want to customize it you need to build another image based on our images and build that image.

⁠Update the image

For updating the image you only need to run sail pull and restart your containers.

⁠License

Copyright © AriaieBOY

Sail Runtime Image is open-sourced software licensed under the MIT license⁠.

Tag summary

Content type

Image

Digest

sha256:360525f1e…

Size

263.8 MB

Last updated

about 1 month ago

docker pull ariaieboy/sail-runtime-image:8.4-24-alpine