installed laravel/sail (laravel docker development implementation)

updated composer
This commit is contained in:
Fabricio
2022-06-28 19:37:10 +02:00
parent b6c603a97b
commit f07fd0d6a4
7 changed files with 334 additions and 131 deletions

63
Dockerfile Executable file
View File

@@ -0,0 +1,63 @@
FROM ubuntu:22.04
LABEL maintainer="Taylor Otwell"
ARG WWWGROUP
ARG NODE_VERSION=16
ARG POSTGRES_VERSION=14
WORKDIR /var/www/html
ENV DEBIAN_FRONTEND noninteractive
ENV TZ=UTC
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
RUN apt-get update \
&& apt-get install -y gnupg gosu curl ca-certificates zip unzip git supervisor sqlite3 libcap2-bin libpng-dev python2 \
&& mkdir -p ~/.gnupg \
&& chmod 600 ~/.gnupg \
&& echo "disable-ipv6" >> ~/.gnupg/dirmngr.conf \
&& echo "keyserver hkp://keyserver.ubuntu.com:80" >> ~/.gnupg/dirmngr.conf \
&& gpg --recv-key 0x14aa40ec0831756756d7f66c4f4ea0aae5267a6c \
&& gpg --export 0x14aa40ec0831756756d7f66c4f4ea0aae5267a6c > /usr/share/keyrings/ppa_ondrej_php.gpg \
&& echo "deb [signed-by=/usr/share/keyrings/ppa_ondrej_php.gpg] https://ppa.launchpadcontent.net/ondrej/php/ubuntu jammy main" > /etc/apt/sources.list.d/ppa_ondrej_php.list \
&& apt-get update \
&& apt-get install -y php8.1-cli php8.1-dev \
php8.1-pgsql php8.1-sqlite3 php8.1-gd \
php8.1-curl \
php8.1-imap php8.1-mysql php8.1-mbstring \
php8.1-xml php8.1-zip php8.1-bcmath php8.1-soap \
php8.1-intl php8.1-readline \
php8.1-ldap \
php8.1-msgpack php8.1-igbinary php8.1-redis php8.1-swoole \
php8.1-memcached php8.1-pcov php8.1-xdebug \
&& php -r "readfile('https://getcomposer.org/installer');" | php -- --install-dir=/usr/bin/ --filename=composer \
&& curl -sLS https://deb.nodesource.com/setup_$NODE_VERSION.x | bash - \
&& apt-get install -y nodejs \
&& npm install -g npm \
&& curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor | tee /usr/share/keyrings/yarn.gpg >/dev/null \
&& echo "deb [signed-by=/usr/share/keyrings/yarn.gpg] https://dl.yarnpkg.com/debian/ stable main" > /etc/apt/sources.list.d/yarn.list \
&& curl -sS https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | tee /usr/share/keyrings/pgdg.gpg >/dev/null \
&& echo "deb [signed-by=/usr/share/keyrings/pgdg.gpg] http://apt.postgresql.org/pub/repos/apt jammy-pgdg main" > /etc/apt/sources.list.d/pgdg.list \
&& apt-get update \
&& apt-get install -y yarn \
&& apt-get install -y mysql-client \
&& apt-get install -y postgresql-client-$POSTGRES_VERSION \
&& apt-get -y autoremove \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
RUN setcap "cap_net_bind_service=+ep" /usr/bin/php8.1
RUN groupadd --force -g $WWWGROUP sail
RUN useradd -ms /bin/bash --no-user-group -g $WWWGROUP -u 1337 sail
COPY start-container /usr/local/bin/start-container
COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf
COPY php.ini /etc/php/8.1/cli/conf.d/99-sail.ini
RUN chmod +x /usr/local/bin/start-container
EXPOSE 8000
ENTRYPOINT ["start-container"]

15
composer.json Normal file → Executable file
View File

@@ -45,15 +45,16 @@
"vimeo/psalm": "^4.19.0"
},
"require-dev": {
"ext-json": "*",
"barryvdh/laravel-ide-helper": "^2.12.1",
"friendsofphp/php-cs-fixer": "^3.5.0",
"spatie/laravel-ignition": "^1.0",
"nunomaduro/larastan": "^0.7.15",
"nunomaduro/collision": "^6.1",
"phpunit/phpunit": "^9.5.16",
"mockery/mockery": "^1.5.0",
"fakerphp/faker": "^1.19.0",
"ext-json": "*"
"friendsofphp/php-cs-fixer": "^3.5.0",
"laravel/sail": "^1.15",
"mockery/mockery": "^1.5.0",
"nunomaduro/collision": "^6.1",
"nunomaduro/larastan": "^0.7.15",
"phpunit/phpunit": "^9.5.16",
"spatie/laravel-ignition": "^1.0"
},
"repositories": {
"makingcg/subscription": {

298
composer.lock generated Normal file → Executable file
View File

@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "05544f92a4ec73284d9a0042968129a9",
"content-hash": "c5da2cdbc536116cafaeb39f1fcd1977",
"packages": [
{
"name": "amphp/amp",
@@ -280,16 +280,16 @@
},
{
"name": "aws/aws-sdk-php",
"version": "3.228.2",
"version": "3.228.4",
"source": {
"type": "git",
"url": "https://github.com/aws/aws-sdk-php.git",
"reference": "e7c4d70aef99e71f9114a302ec576dc2689df283"
"reference": "c8ab968e44b3371b1ed055b61f947dcd1f3a6aab"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/e7c4d70aef99e71f9114a302ec576dc2689df283",
"reference": "e7c4d70aef99e71f9114a302ec576dc2689df283",
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/c8ab968e44b3371b1ed055b61f947dcd1f3a6aab",
"reference": "c8ab968e44b3371b1ed055b61f947dcd1f3a6aab",
"shasum": ""
},
"require": {
@@ -365,9 +365,9 @@
"support": {
"forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80",
"issues": "https://github.com/aws/aws-sdk-php/issues",
"source": "https://github.com/aws/aws-sdk-php/tree/3.228.2"
"source": "https://github.com/aws/aws-sdk-php/tree/3.228.4"
},
"time": "2022-06-23T18:17:44+00:00"
"time": "2022-06-27T18:13:31+00:00"
},
{
"name": "bacon/bacon-qr-code",
@@ -507,16 +507,16 @@
},
{
"name": "brianium/paratest",
"version": "v6.5.0",
"version": "v6.5.1",
"source": {
"type": "git",
"url": "https://github.com/paratestphp/paratest.git",
"reference": "d22afc08dab73d1dff07c700ed6a78f138f5020e"
"reference": "41fc4cc01422dae2d6bf6a0ce39756f57ac7d8a9"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/paratestphp/paratest/zipball/d22afc08dab73d1dff07c700ed6a78f138f5020e",
"reference": "d22afc08dab73d1dff07c700ed6a78f138f5020e",
"url": "https://api.github.com/repos/paratestphp/paratest/zipball/41fc4cc01422dae2d6bf6a0ce39756f57ac7d8a9",
"reference": "41fc4cc01422dae2d6bf6a0ce39756f57ac7d8a9",
"shasum": ""
},
"require": {
@@ -545,7 +545,9 @@
"vimeo/psalm": "^4.23.0"
},
"bin": [
"bin/paratest"
"bin/paratest",
"bin/paratest.bat",
"bin/paratest_for_phpstorm"
],
"type": "library",
"autoload": {
@@ -581,7 +583,7 @@
],
"support": {
"issues": "https://github.com/paratestphp/paratest/issues",
"source": "https://github.com/paratestphp/paratest/tree/v6.5.0"
"source": "https://github.com/paratestphp/paratest/tree/v6.5.1"
},
"funding": [
{
@@ -593,7 +595,7 @@
"type": "paypal"
}
],
"time": "2022-06-23T13:00:19+00:00"
"time": "2022-06-24T16:02:27+00:00"
},
{
"name": "brick/math",
@@ -3345,16 +3347,16 @@
},
{
"name": "laravel/framework",
"version": "v9.18.0",
"version": "v9.19.0",
"source": {
"type": "git",
"url": "https://github.com/laravel/framework.git",
"reference": "93a1296bca43c1ca8dcb5df8f97107e819a71499"
"reference": "bbce25bd823133f6a5a724f2d62680b711f1d0df"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laravel/framework/zipball/93a1296bca43c1ca8dcb5df8f97107e819a71499",
"reference": "93a1296bca43c1ca8dcb5df8f97107e819a71499",
"url": "https://api.github.com/repos/laravel/framework/zipball/bbce25bd823133f6a5a724f2d62680b711f1d0df",
"reference": "bbce25bd823133f6a5a724f2d62680b711f1d0df",
"shasum": ""
},
"require": {
@@ -3520,7 +3522,7 @@
"issues": "https://github.com/laravel/framework/issues",
"source": "https://github.com/laravel/framework"
},
"time": "2022-06-21T14:40:11+00:00"
"time": "2022-06-28T14:33:19+00:00"
},
{
"name": "laravel/sanctum",
@@ -4562,11 +4564,17 @@
},
{
"name": "makingcg/subscription",
"version": "dev-master",
"version": "dev-main",
"source": {
"type": "git",
"url": "https://github.com/gvidas/subcription.git",
"reference": "f1777b8ecc8bdf7dac813ff33876f6edb7df9b7b"
},
"dist": {
"type": "path",
"url": "packages/subscription",
"reference": "16c29a065079db3bcbe51eb9c1b720c48d9dd940"
"type": "zip",
"url": "https://api.github.com/repos/gvidas/subcription/zipball/f1777b8ecc8bdf7dac813ff33876f6edb7df9b7b",
"reference": "f1777b8ecc8bdf7dac813ff33876f6edb7df9b7b",
"shasum": ""
},
"require": {
"friendsofphp/php-cs-fixer": "^3.6.0",
@@ -4588,6 +4596,7 @@
"phpunit/phpunit": "^9.5.16",
"spatie/laravel-ray": "^1.29.4"
},
"default-branch": true,
"type": "library",
"extra": {
"laravel": {
@@ -4600,39 +4609,18 @@
}
},
"autoload": {
"psr-4": {
"VueFileManager\\Subscription\\": "src",
"VueFileManager\\Subscription\\Database\\Factories\\": "database/factories"
},
"files": [
"src/Support/helpers.php",
"src/Support/PayPalHelpers.php",
"src/Support/PaystackHelpers.php",
"src/Support/StripeHelpers.php"
]
},
"autoload-dev": {
],
"psr-4": {
"App\\": "src/App/",
"Domain\\": "src/Domain/",
"Support\\": "src/Support/",
"Tests\\": "tests"
"VueFileManager\\Subscription\\": "src",
"VueFileManager\\Subscription\\Database\\Factories\\": "database/factories"
}
},
"scripts": {
"psalm": [
"vendor/bin/psalm"
],
"format": [
"vendor/bin/php-cs-fixer fix --allow-risky=yes"
],
"test": [
"./vendor/bin/testbench package:test --parallel --no-coverage"
],
"test-coverage": [
"vendor/bin/phpunit --coverage-html coverage"
]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
@@ -4650,10 +4638,11 @@
"laravel",
"subscription"
],
"transport-options": {
"symlink": true,
"relative": true
}
"support": {
"issues": "https://github.com/gvidas/subcription/issues",
"source": "https://github.com/gvidas/subcription/tree/main"
},
"time": "2022-04-03T12:11:09+00:00"
},
{
"name": "matthewbdaly/laravel-azure-storage",
@@ -9451,16 +9440,16 @@
},
{
"name": "spatie/laravel-package-tools",
"version": "1.12.0",
"version": "1.12.1",
"source": {
"type": "git",
"url": "https://github.com/spatie/laravel-package-tools.git",
"reference": "9e6c0382553f1317c02f1ae0ee71c64821eb5af0"
"reference": "09f80fa240d44fafb1c70657c74ee44ffa929357"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/spatie/laravel-package-tools/zipball/9e6c0382553f1317c02f1ae0ee71c64821eb5af0",
"reference": "9e6c0382553f1317c02f1ae0ee71c64821eb5af0",
"url": "https://api.github.com/repos/spatie/laravel-package-tools/zipball/09f80fa240d44fafb1c70657c74ee44ffa929357",
"reference": "09f80fa240d44fafb1c70657c74ee44ffa929357",
"shasum": ""
},
"require": {
@@ -9498,7 +9487,7 @@
],
"support": {
"issues": "https://github.com/spatie/laravel-package-tools/issues",
"source": "https://github.com/spatie/laravel-package-tools/tree/1.12.0"
"source": "https://github.com/spatie/laravel-package-tools/tree/1.12.1"
},
"funding": [
{
@@ -9506,7 +9495,7 @@
"type": "github"
}
],
"time": "2022-06-19T20:01:24+00:00"
"time": "2022-06-28T14:29:26+00:00"
},
{
"name": "spatie/laravel-query-builder",
@@ -10053,16 +10042,16 @@
},
{
"name": "symfony/console",
"version": "v6.1.1",
"version": "v6.1.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
"reference": "6187424023fbffcd757789aeb517c9161b1eabee"
"reference": "7a86c1c42fbcb69b59768504c7bca1d3767760b7"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/console/zipball/6187424023fbffcd757789aeb517c9161b1eabee",
"reference": "6187424023fbffcd757789aeb517c9161b1eabee",
"url": "https://api.github.com/repos/symfony/console/zipball/7a86c1c42fbcb69b59768504c7bca1d3767760b7",
"reference": "7a86c1c42fbcb69b59768504c7bca1d3767760b7",
"shasum": ""
},
"require": {
@@ -10129,7 +10118,7 @@
"terminal"
],
"support": {
"source": "https://github.com/symfony/console/tree/v6.1.1"
"source": "https://github.com/symfony/console/tree/v6.1.2"
},
"funding": [
{
@@ -10145,7 +10134,7 @@
"type": "tidelift"
}
],
"time": "2022-06-08T14:02:09+00:00"
"time": "2022-06-26T13:01:30+00:00"
},
{
"name": "symfony/css-selector",
@@ -10214,7 +10203,7 @@
},
{
"name": "symfony/deprecation-contracts",
"version": "v3.1.0",
"version": "v3.1.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/deprecation-contracts.git",
@@ -10261,7 +10250,7 @@
"description": "A generic function and convention to trigger deprecation notices",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/deprecation-contracts/tree/v3.1.0"
"source": "https://github.com/symfony/deprecation-contracts/tree/v3.1.1"
},
"funding": [
{
@@ -10435,7 +10424,7 @@
},
{
"name": "symfony/event-dispatcher-contracts",
"version": "v3.1.0",
"version": "v3.1.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher-contracts.git",
@@ -10494,7 +10483,7 @@
"standards"
],
"support": {
"source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.1.0"
"source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.1.1"
},
"funding": [
{
@@ -10641,16 +10630,16 @@
},
{
"name": "symfony/http-client",
"version": "v6.1.1",
"version": "v6.1.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-client.git",
"reference": "c5473d69640980367a6bdb0cdb449225dcaa991b"
"reference": "ea1af6c8cc479147d67a3fead457dd7b06261041"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/http-client/zipball/c5473d69640980367a6bdb0cdb449225dcaa991b",
"reference": "c5473d69640980367a6bdb0cdb449225dcaa991b",
"url": "https://api.github.com/repos/symfony/http-client/zipball/ea1af6c8cc479147d67a3fead457dd7b06261041",
"reference": "ea1af6c8cc479147d67a3fead457dd7b06261041",
"shasum": ""
},
"require": {
@@ -10705,7 +10694,7 @@
"description": "Provides powerful methods to fetch HTTP resources synchronously or asynchronously",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/http-client/tree/v6.1.1"
"source": "https://github.com/symfony/http-client/tree/v6.1.2"
},
"funding": [
{
@@ -10721,11 +10710,11 @@
"type": "tidelift"
}
],
"time": "2022-06-09T13:06:55+00:00"
"time": "2022-06-19T13:02:30+00:00"
},
{
"name": "symfony/http-client-contracts",
"version": "v3.1.0",
"version": "v3.1.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-client-contracts.git",
@@ -10786,7 +10775,7 @@
"standards"
],
"support": {
"source": "https://github.com/symfony/http-client-contracts/tree/v3.1.0"
"source": "https://github.com/symfony/http-client-contracts/tree/v3.1.1"
},
"funding": [
{
@@ -10806,16 +10795,16 @@
},
{
"name": "symfony/http-foundation",
"version": "v6.1.1",
"version": "v6.1.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-foundation.git",
"reference": "a58dc88d56e04e57993d96c1407a17407610e1df"
"reference": "86119d294e51afe4d8e07da96b63332bd1f3f52c"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/http-foundation/zipball/a58dc88d56e04e57993d96c1407a17407610e1df",
"reference": "a58dc88d56e04e57993d96c1407a17407610e1df",
"url": "https://api.github.com/repos/symfony/http-foundation/zipball/86119d294e51afe4d8e07da96b63332bd1f3f52c",
"reference": "86119d294e51afe4d8e07da96b63332bd1f3f52c",
"shasum": ""
},
"require": {
@@ -10858,7 +10847,7 @@
"description": "Defines an object-oriented layer for the HTTP specification",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/http-foundation/tree/v6.1.1"
"source": "https://github.com/symfony/http-foundation/tree/v6.1.2"
},
"funding": [
{
@@ -10874,20 +10863,20 @@
"type": "tidelift"
}
],
"time": "2022-05-31T14:28:03+00:00"
"time": "2022-06-19T13:21:48+00:00"
},
{
"name": "symfony/http-kernel",
"version": "v6.1.1",
"version": "v6.1.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-kernel.git",
"reference": "86c4d6f6c5b6cd012df41e3b950c924b3ffdc019"
"reference": "8aaede489900dda61aee208557f63bfa1bca0877"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/http-kernel/zipball/86c4d6f6c5b6cd012df41e3b950c924b3ffdc019",
"reference": "86c4d6f6c5b6cd012df41e3b950c924b3ffdc019",
"url": "https://api.github.com/repos/symfony/http-kernel/zipball/8aaede489900dda61aee208557f63bfa1bca0877",
"reference": "8aaede489900dda61aee208557f63bfa1bca0877",
"shasum": ""
},
"require": {
@@ -10968,7 +10957,7 @@
"description": "Provides a structured process for converting a Request into a Response",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/http-kernel/tree/v6.1.1"
"source": "https://github.com/symfony/http-kernel/tree/v6.1.2"
},
"funding": [
{
@@ -10984,20 +10973,20 @@
"type": "tidelift"
}
],
"time": "2022-06-09T17:31:33+00:00"
"time": "2022-06-26T17:06:14+00:00"
},
{
"name": "symfony/mailer",
"version": "v6.1.1",
"version": "v6.1.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/mailer.git",
"reference": "db6a19a5c896139901c2de59fc9849379e0ff3b6"
"reference": "8fa150355115ea09238858ae3cfaf249fd1fd5ed"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/mailer/zipball/db6a19a5c896139901c2de59fc9849379e0ff3b6",
"reference": "db6a19a5c896139901c2de59fc9849379e0ff3b6",
"url": "https://api.github.com/repos/symfony/mailer/zipball/8fa150355115ea09238858ae3cfaf249fd1fd5ed",
"reference": "8fa150355115ea09238858ae3cfaf249fd1fd5ed",
"shasum": ""
},
"require": {
@@ -11042,7 +11031,7 @@
"description": "Helps sending emails",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/mailer/tree/v6.1.1"
"source": "https://github.com/symfony/mailer/tree/v6.1.2"
},
"funding": [
{
@@ -11058,7 +11047,7 @@
"type": "tidelift"
}
],
"time": "2022-06-06T19:15:01+00:00"
"time": "2022-06-19T13:21:48+00:00"
},
{
"name": "symfony/mailgun-mailer",
@@ -12232,16 +12221,16 @@
},
{
"name": "symfony/service-contracts",
"version": "v3.1.0",
"version": "v3.1.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/service-contracts.git",
"reference": "d66cd8ab656780f62c4215b903a420eb86358957"
"reference": "925e713fe8fcacf6bc05e936edd8dd5441a21239"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/service-contracts/zipball/d66cd8ab656780f62c4215b903a420eb86358957",
"reference": "d66cd8ab656780f62c4215b903a420eb86358957",
"url": "https://api.github.com/repos/symfony/service-contracts/zipball/925e713fe8fcacf6bc05e936edd8dd5441a21239",
"reference": "925e713fe8fcacf6bc05e936edd8dd5441a21239",
"shasum": ""
},
"require": {
@@ -12297,7 +12286,7 @@
"standards"
],
"support": {
"source": "https://github.com/symfony/service-contracts/tree/v3.1.0"
"source": "https://github.com/symfony/service-contracts/tree/v3.1.1"
},
"funding": [
{
@@ -12313,7 +12302,7 @@
"type": "tidelift"
}
],
"time": "2022-05-07T08:07:09+00:00"
"time": "2022-05-30T19:18:58+00:00"
},
{
"name": "symfony/stopwatch",
@@ -12379,16 +12368,16 @@
},
{
"name": "symfony/string",
"version": "v6.1.0",
"version": "v6.1.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/string.git",
"reference": "d3edc75baf9f1d4f94879764dda2e1ac33499529"
"reference": "1903f2879875280c5af944625e8246d81c2f0604"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/string/zipball/d3edc75baf9f1d4f94879764dda2e1ac33499529",
"reference": "d3edc75baf9f1d4f94879764dda2e1ac33499529",
"url": "https://api.github.com/repos/symfony/string/zipball/1903f2879875280c5af944625e8246d81c2f0604",
"reference": "1903f2879875280c5af944625e8246d81c2f0604",
"shasum": ""
},
"require": {
@@ -12444,7 +12433,7 @@
"utf8"
],
"support": {
"source": "https://github.com/symfony/string/tree/v6.1.0"
"source": "https://github.com/symfony/string/tree/v6.1.2"
},
"funding": [
{
@@ -12460,7 +12449,7 @@
"type": "tidelift"
}
],
"time": "2022-04-22T08:18:23+00:00"
"time": "2022-06-26T16:35:04+00:00"
},
{
"name": "symfony/translation",
@@ -12560,16 +12549,16 @@
},
{
"name": "symfony/translation-contracts",
"version": "v3.1.0",
"version": "v3.1.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/translation-contracts.git",
"reference": "bfddd2a1faa271b782b791c361cc16e2dd49dfaa"
"reference": "606be0f48e05116baef052f7f3abdb345c8e02cc"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/translation-contracts/zipball/bfddd2a1faa271b782b791c361cc16e2dd49dfaa",
"reference": "bfddd2a1faa271b782b791c361cc16e2dd49dfaa",
"url": "https://api.github.com/repos/symfony/translation-contracts/zipball/606be0f48e05116baef052f7f3abdb345c8e02cc",
"reference": "606be0f48e05116baef052f7f3abdb345c8e02cc",
"shasum": ""
},
"require": {
@@ -12621,7 +12610,7 @@
"standards"
],
"support": {
"source": "https://github.com/symfony/translation-contracts/tree/v3.1.0"
"source": "https://github.com/symfony/translation-contracts/tree/v3.1.1"
},
"funding": [
{
@@ -12637,7 +12626,7 @@
"type": "tidelift"
}
],
"time": "2022-04-22T07:30:54+00:00"
"time": "2022-06-27T17:24:16+00:00"
},
{
"name": "symfony/var-dumper",
@@ -12980,16 +12969,16 @@
},
{
"name": "vimeo/psalm",
"version": "4.23.0",
"version": "4.24.0",
"source": {
"type": "git",
"url": "https://github.com/vimeo/psalm.git",
"reference": "f1fe6ff483bf325c803df9f510d09a03fd796f88"
"reference": "06dd975cb55d36af80f242561738f16c5f58264f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/vimeo/psalm/zipball/f1fe6ff483bf325c803df9f510d09a03fd796f88",
"reference": "f1fe6ff483bf325c803df9f510d09a03fd796f88",
"url": "https://api.github.com/repos/vimeo/psalm/zipball/06dd975cb55d36af80f242561738f16c5f58264f",
"reference": "06dd975cb55d36af80f242561738f16c5f58264f",
"shasum": ""
},
"require": {
@@ -13081,9 +13070,9 @@
],
"support": {
"issues": "https://github.com/vimeo/psalm/issues",
"source": "https://github.com/vimeo/psalm/tree/4.23.0"
"source": "https://github.com/vimeo/psalm/tree/4.24.0"
},
"time": "2022-04-28T17:35:49+00:00"
"time": "2022-06-26T11:47:54+00:00"
},
{
"name": "vlucas/phpdotenv",
@@ -14090,6 +14079,66 @@
},
"time": "2022-04-13T08:02:27+00:00"
},
{
"name": "laravel/sail",
"version": "v1.15.0",
"source": {
"type": "git",
"url": "https://github.com/laravel/sail.git",
"reference": "676e1ff33c1b8af657779f62f57360c376cba666"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laravel/sail/zipball/676e1ff33c1b8af657779f62f57360c376cba666",
"reference": "676e1ff33c1b8af657779f62f57360c376cba666",
"shasum": ""
},
"require": {
"illuminate/console": "^8.0|^9.0",
"illuminate/contracts": "^8.0|^9.0",
"illuminate/support": "^8.0|^9.0",
"php": "^7.3|^8.0"
},
"bin": [
"bin/sail"
],
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.x-dev"
},
"laravel": {
"providers": [
"Laravel\\Sail\\SailServiceProvider"
]
}
},
"autoload": {
"psr-4": {
"Laravel\\Sail\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Taylor Otwell",
"email": "taylor@laravel.com"
}
],
"description": "Docker files for running a basic Laravel application.",
"keywords": [
"docker",
"laravel"
],
"support": {
"issues": "https://github.com/laravel/sail/issues",
"source": "https://github.com/laravel/sail"
},
"time": "2022-06-24T13:56:11+00:00"
},
{
"name": "mockery/mockery",
"version": "1.5.0",
@@ -14164,16 +14213,16 @@
},
{
"name": "nunomaduro/collision",
"version": "v6.2.0",
"version": "v6.2.1",
"source": {
"type": "git",
"url": "https://github.com/nunomaduro/collision.git",
"reference": "c379636dc50e829edb3a8bcb944a01aa1aed8f25"
"reference": "5f058f7e39278b701e455b3c82ec5298cf001d89"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/nunomaduro/collision/zipball/c379636dc50e829edb3a8bcb944a01aa1aed8f25",
"reference": "c379636dc50e829edb3a8bcb944a01aa1aed8f25",
"url": "https://api.github.com/repos/nunomaduro/collision/zipball/5f058f7e39278b701e455b3c82ec5298cf001d89",
"reference": "5f058f7e39278b701e455b3c82ec5298cf001d89",
"shasum": ""
},
"require": {
@@ -14185,6 +14234,7 @@
"require-dev": {
"brianium/paratest": "^6.4.1",
"laravel/framework": "^9.7",
"laravel/pint": "^0.2.1",
"nunomaduro/larastan": "^1.0.2",
"nunomaduro/mock-final-classes": "^1.1.0",
"orchestra/testbench": "^7.3.0",
@@ -14247,7 +14297,7 @@
"type": "patreon"
}
],
"time": "2022-04-05T15:31:38+00:00"
"time": "2022-06-27T16:11:16+00:00"
},
{
"name": "nunomaduro/larastan",
@@ -14912,5 +14962,5 @@
"platform-dev": {
"ext-json": "*"
},
"plugin-api-version": "2.2.0"
"plugin-api-version": "2.3.0"
}

52
docker-compose.yml Executable file
View File

@@ -0,0 +1,52 @@
# For more information: https://laravel.com/docs/sail
version: '3'
services:
laravel.test:
build:
context: .
dockerfile: Dockerfile
args:
WWWGROUP: '${WWWGROUP}'
image: sail-8.1/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}'
volumes:
- '.:/var/www/html'
networks:
- sail
depends_on:
- mysql
mysql:
image: 'mysql/mysql-server:8.0'
ports:
- '${FORWARD_DB_PORT:-3306}:3306'
environment:
MYSQL_ROOT_PASSWORD: '${DB_PASSWORD}'
MYSQL_ROOT_HOST: "%"
MYSQL_DATABASE: '${DB_DATABASE}'
MYSQL_USER: '${DB_USERNAME}'
MYSQL_PASSWORD: '${DB_PASSWORD}'
MYSQL_ALLOW_EMPTY_PASSWORD: 1
volumes:
- 'sail-mysql:/var/lib/mysql'
- './vendor/laravel/sail/database/mysql/create-testing-database.sh:/docker-entrypoint-initdb.d/10-create-testing-database.sh'
networks:
- sail
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-p${DB_PASSWORD}"]
retries: 3
timeout: 5s
networks:
sail:
driver: bridge
volumes:
sail-mysql:
driver: local

6
php.ini Executable file
View File

@@ -0,0 +1,6 @@
[PHP]
post_max_size = 128M
upload_max_filesize = 128M
variables_order = EGPCS
memory_limit = 1024M
max_execution_time = 180

17
start-container Normal file
View File

@@ -0,0 +1,17 @@
#!/usr/bin/env bash
if [ ! -z "$WWWUSER" ]; then
usermod -u $WWWUSER sail
fi
if [ ! -d /.composer ]; then
mkdir /.composer
fi
chmod -R ugo+rw /.composer
if [ $# -gt 0 ]; then
exec gosu $WWWUSER "$@"
else
exec /usr/bin/supervisord -c /etc/supervisor/conf.d/supervisord.conf
fi

14
supervisord.conf Normal file
View File

@@ -0,0 +1,14 @@
[supervisord]
nodaemon=true
user=root
logfile=/var/log/supervisor/supervisord.log
pidfile=/var/run/supervisord.pid
[program:php]
command=/usr/bin/php -d variables_order=EGPCS /var/www/html/artisan serve --host=0.0.0.0 --port=80
user=sail
environment=LARAVEL_SAIL="1"
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0