Skip to content

Commit 3a836a0

Browse files
Ubuntu 22.04 base image and s6 Overlay v3 (alexjustesen#41)
Co-authored-by: Jay Rogers <[email protected]>
1 parent 257250a commit 3a836a0

File tree

21 files changed

+266
-212
lines changed

21 files changed

+266
-212
lines changed

.dockerignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
/.git
12
/.idea
23
/.vscode
34
/docker/8.1

.phpstorm.meta.php

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,7 @@
133133
'Illuminate\Queue\Console\WorkCommand' => \Illuminate\Queue\Console\WorkCommand::class,
134134
'Illuminate\Routing\Console\ControllerMakeCommand' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
135135
'Illuminate\Routing\Console\MiddlewareMakeCommand' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class,
136+
'Illuminate\Routing\Contracts\CallableDispatcher' => \Illuminate\Routing\CallableDispatcher::class,
136137
'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class,
137138
'Illuminate\Session\Console\SessionTableCommand' => \Illuminate\Session\Console\SessionTableCommand::class,
138139
'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class,
@@ -330,6 +331,7 @@
330331
'Illuminate\Queue\Console\WorkCommand' => \Illuminate\Queue\Console\WorkCommand::class,
331332
'Illuminate\Routing\Console\ControllerMakeCommand' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
332333
'Illuminate\Routing\Console\MiddlewareMakeCommand' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class,
334+
'Illuminate\Routing\Contracts\CallableDispatcher' => \Illuminate\Routing\CallableDispatcher::class,
333335
'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class,
334336
'Illuminate\Session\Console\SessionTableCommand' => \Illuminate\Session\Console\SessionTableCommand::class,
335337
'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class,
@@ -527,6 +529,7 @@
527529
'Illuminate\Queue\Console\WorkCommand' => \Illuminate\Queue\Console\WorkCommand::class,
528530
'Illuminate\Routing\Console\ControllerMakeCommand' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
529531
'Illuminate\Routing\Console\MiddlewareMakeCommand' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class,
532+
'Illuminate\Routing\Contracts\CallableDispatcher' => \Illuminate\Routing\CallableDispatcher::class,
530533
'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class,
531534
'Illuminate\Session\Console\SessionTableCommand' => \Illuminate\Session\Console\SessionTableCommand::class,
532535
'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class,
@@ -724,6 +727,7 @@
724727
'Illuminate\Queue\Console\WorkCommand' => \Illuminate\Queue\Console\WorkCommand::class,
725728
'Illuminate\Routing\Console\ControllerMakeCommand' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
726729
'Illuminate\Routing\Console\MiddlewareMakeCommand' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class,
730+
'Illuminate\Routing\Contracts\CallableDispatcher' => \Illuminate\Routing\CallableDispatcher::class,
727731
'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class,
728732
'Illuminate\Session\Console\SessionTableCommand' => \Illuminate\Session\Console\SessionTableCommand::class,
729733
'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class,
@@ -921,6 +925,7 @@
921925
'Illuminate\Queue\Console\WorkCommand' => \Illuminate\Queue\Console\WorkCommand::class,
922926
'Illuminate\Routing\Console\ControllerMakeCommand' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
923927
'Illuminate\Routing\Console\MiddlewareMakeCommand' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class,
928+
'Illuminate\Routing\Contracts\CallableDispatcher' => \Illuminate\Routing\CallableDispatcher::class,
924929
'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class,
925930
'Illuminate\Session\Console\SessionTableCommand' => \Illuminate\Session\Console\SessionTableCommand::class,
926931
'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class,
@@ -1118,6 +1123,7 @@
11181123
'Illuminate\Queue\Console\WorkCommand' => \Illuminate\Queue\Console\WorkCommand::class,
11191124
'Illuminate\Routing\Console\ControllerMakeCommand' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
11201125
'Illuminate\Routing\Console\MiddlewareMakeCommand' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class,
1126+
'Illuminate\Routing\Contracts\CallableDispatcher' => \Illuminate\Routing\CallableDispatcher::class,
11211127
'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class,
11221128
'Illuminate\Session\Console\SessionTableCommand' => \Illuminate\Session\Console\SessionTableCommand::class,
11231129
'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class,
@@ -1315,6 +1321,7 @@
13151321
'Illuminate\Queue\Console\WorkCommand' => \Illuminate\Queue\Console\WorkCommand::class,
13161322
'Illuminate\Routing\Console\ControllerMakeCommand' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
13171323
'Illuminate\Routing\Console\MiddlewareMakeCommand' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class,
1324+
'Illuminate\Routing\Contracts\CallableDispatcher' => \Illuminate\Routing\CallableDispatcher::class,
13181325
'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class,
13191326
'Illuminate\Session\Console\SessionTableCommand' => \Illuminate\Session\Console\SessionTableCommand::class,
13201327
'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class,
@@ -1512,6 +1519,7 @@
15121519
'Illuminate\Queue\Console\WorkCommand' => \Illuminate\Queue\Console\WorkCommand::class,
15131520
'Illuminate\Routing\Console\ControllerMakeCommand' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
15141521
'Illuminate\Routing\Console\MiddlewareMakeCommand' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class,
1522+
'Illuminate\Routing\Contracts\CallableDispatcher' => \Illuminate\Routing\CallableDispatcher::class,
15151523
'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class,
15161524
'Illuminate\Session\Console\SessionTableCommand' => \Illuminate\Session\Console\SessionTableCommand::class,
15171525
'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class,
@@ -1709,6 +1717,7 @@
17091717
'Illuminate\Queue\Console\WorkCommand' => \Illuminate\Queue\Console\WorkCommand::class,
17101718
'Illuminate\Routing\Console\ControllerMakeCommand' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
17111719
'Illuminate\Routing\Console\MiddlewareMakeCommand' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class,
1720+
'Illuminate\Routing\Contracts\CallableDispatcher' => \Illuminate\Routing\CallableDispatcher::class,
17121721
'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class,
17131722
'Illuminate\Session\Console\SessionTableCommand' => \Illuminate\Session\Console\SessionTableCommand::class,
17141723
'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class,
@@ -1906,6 +1915,7 @@
19061915
'Illuminate\Queue\Console\WorkCommand' => \Illuminate\Queue\Console\WorkCommand::class,
19071916
'Illuminate\Routing\Console\ControllerMakeCommand' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
19081917
'Illuminate\Routing\Console\MiddlewareMakeCommand' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class,
1918+
'Illuminate\Routing\Contracts\CallableDispatcher' => \Illuminate\Routing\CallableDispatcher::class,
19091919
'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class,
19101920
'Illuminate\Session\Console\SessionTableCommand' => \Illuminate\Session\Console\SessionTableCommand::class,
19111921
'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class,
@@ -2103,6 +2113,7 @@
21032113
'Illuminate\Queue\Console\WorkCommand' => \Illuminate\Queue\Console\WorkCommand::class,
21042114
'Illuminate\Routing\Console\ControllerMakeCommand' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
21052115
'Illuminate\Routing\Console\MiddlewareMakeCommand' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class,
2116+
'Illuminate\Routing\Contracts\CallableDispatcher' => \Illuminate\Routing\CallableDispatcher::class,
21062117
'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class,
21072118
'Illuminate\Session\Console\SessionTableCommand' => \Illuminate\Session\Console\SessionTableCommand::class,
21082119
'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class,

Dockerfile

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,13 @@
1-
FROM serversideup/php:8.1-fpm-nginx
1+
FROM serversideup/php:beta-8.1-fpm-nginx
2+
3+
ENV PHP_POOL_NAME=speedtest-tracker_php
4+
ENV PHP_POST_MAX_SIZE=1G
5+
ENV PHP_UPLOAD_MAX_FILE_SIZE=1G
26

37
# Install addition packages
48
RUN apt-get update && apt-get install -y \
59
cron \
6-
php8.1-bcmath \
10+
gnupg \
711
php8.1-pgsql \
812
&& apt-get clean \
913
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/*
@@ -13,11 +17,11 @@ RUN curl -s https://packagecloud.io/install/repositories/ookla/speedtest-cli/scr
1317
&& apt-get install -y speedtest
1418

1519
# Copy package configs
16-
COPY docker/deploy/cron/scheduler /etc/cron.d/scheduler
17-
COPY docker/deploy/etc/services.d/ /etc/services.d/
20+
COPY --chmod=644 docker/deploy/cron/scheduler /etc/cron.d/scheduler
21+
COPY --chmod=755 docker/deploy/etc/s6-overlay/ /etc/s6-overlay/
1822

1923
# Copy app
20-
COPY . /var/www/html
24+
COPY --chown=webuser:webgroup . /var/www/html
2125
COPY .env.docker .env
2226

2327
# Install app dependencies
@@ -26,10 +30,4 @@ RUN composer install --no-interaction --prefer-dist --optimize-autoloader --no-d
2630
&& mkdir -p storage/logs \
2731
&& php artisan optimize:clear \
2832
&& chown -R webuser:webgroup /var/www/html \
29-
&& rm -rf /etc/cont-init.d/50-laravel-automations \
30-
&& chmod 0644 /etc/cron.d/scheduler \
31-
&& crontab /etc/cron.d/scheduler \
32-
&& cp docker/deploy/entrypoint.sh /entrypoint \
33-
&& chmod +x /entrypoint
34-
35-
ENTRYPOINT ["/entrypoint"]
33+
&& crontab /etc/cron.d/scheduler

_ide_helper.php

Lines changed: 62 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
/**
66
* A helper file for Laravel, to provide autocomplete information to your IDE
7-
* Generated for Laravel 9.32.0.
7+
* Generated for Laravel 9.34.0.
88
*
99
* This file should not be included in your code, only analyzed by your IDE!
1010
*
@@ -2849,9 +2849,9 @@ public static function applyEchoHandler($value)
28492849
/**
28502850
*
28512851
*
2852-
* @method static \Illuminate\Broadcasting\Broadcasters\Broadcaster channel(string $channel, callable|string $callback, array $options = [])
2852+
* @method static \Illuminate\Broadcasting\Broadcasters\Broadcaster channel(string $channel, callable|string $callback, array $options = [])
28532853
* @method static mixed auth(\Illuminate\Http\Request $request)
2854-
* @method static void resolveAuthenticatedUserUsing(Closure $callback)
2854+
* @method static void resolveAuthenticatedUserUsing(\Closure $callback)
28552855
* @see \Illuminate\Contracts\Broadcasting\Factory
28562856
*/
28572857
class Broadcast {
@@ -8437,7 +8437,6 @@ public static function log($level, $message, $context = [])
84378437
* @method static void alwaysReplyTo(string $address, string|null $name = null)
84388438
* @method static void alwaysReturnPath(string $address)
84398439
* @method static void alwaysTo(string $address, string|null $name = null)
8440-
* @method static \Illuminate\Mail\PendingMail cc($users)
84418440
* @method static \Illuminate\Mail\SentMessage|null plain(string $view, array $data, $callback)
84428441
* @method static \Illuminate\Mail\SentMessage|null html(string $html, $callback)
84438442
* @method static mixed laterOn(string $queue, \DateTimeInterface|\DateInterval|int $delay, \Illuminate\Contracts\Mail\Mailable|string|array $view)
@@ -8732,6 +8731,18 @@ public static function to($users)
87328731
* @return \Illuminate\Mail\PendingMail
87338732
* @static
87348733
*/
8734+
public static function cc($users)
8735+
{
8736+
/** @var \Illuminate\Support\Testing\Fakes\MailFake $instance */
8737+
return $instance->cc($users);
8738+
}
8739+
/**
8740+
* Begin the process of mailing a mailable class instance.
8741+
*
8742+
* @param mixed $users
8743+
* @return \Illuminate\Mail\PendingMail
8744+
* @static
8745+
*/
87358746
public static function bcc($users)
87368747
{
87378748
/** @var \Illuminate\Support\Testing\Fakes\MailFake $instance */
@@ -11719,6 +11730,40 @@ public static function isFromTrustedProxy()
1171911730
{ //Method inherited from \Symfony\Component\HttpFoundation\Request
1172011731
/** @var \Illuminate\Http\Request $instance */
1172111732
return $instance->isFromTrustedProxy();
11733+
}
11734+
/**
11735+
* Filter the given array of rules into an array of rules that are included in precognitive headers.
11736+
*
11737+
* @param array $rules
11738+
* @return array
11739+
* @static
11740+
*/
11741+
public static function filterPrecognitiveRules($rules)
11742+
{
11743+
/** @var \Illuminate\Http\Request $instance */
11744+
return $instance->filterPrecognitiveRules($rules);
11745+
}
11746+
/**
11747+
* Determine if the request is attempting to be precognitive.
11748+
*
11749+
* @return bool
11750+
* @static
11751+
*/
11752+
public static function isAttemptingPrecognition()
11753+
{
11754+
/** @var \Illuminate\Http\Request $instance */
11755+
return $instance->isAttemptingPrecognition();
11756+
}
11757+
/**
11758+
* Determine if the request is precognitive.
11759+
*
11760+
* @return bool
11761+
* @static
11762+
*/
11763+
public static function isPrecognitive()
11764+
{
11765+
/** @var \Illuminate\Http\Request $instance */
11766+
return $instance->isPrecognitive();
1172211767
}
1172311768
/**
1172411769
* Determine if the request is sending JSON.
@@ -12175,9 +12220,10 @@ public static function date($key, $format = null, $tz = null)
1217512220
/**
1217612221
* Retrieve input from the request as an enum.
1217712222
*
12223+
* @template TEnum
1217812224
* @param string $key
12179-
* @param string $enumClass
12180-
* @return mixed|null
12225+
* @param \Illuminate\Http\class-string<TEnum> $enumClass
12226+
* @return \Illuminate\Http\TEnum|null
1218112227
* @static
1218212228
*/
1218312229
public static function enum($key, $enumClass)
@@ -13752,6 +13798,16 @@ public static function defaultMorphKeyType($type)
1375213798
public static function morphUsingUuids()
1375313799
{ //Method inherited from \Illuminate\Database\Schema\Builder
1375413800
\Illuminate\Database\Schema\PostgresBuilder::morphUsingUuids();
13801+
}
13802+
/**
13803+
* Set the default morph key type for migrations to ULIDs.
13804+
*
13805+
* @return void
13806+
* @static
13807+
*/
13808+
public static function morphUsingUlids()
13809+
{ //Method inherited from \Illuminate\Database\Schema\Builder
13810+
\Illuminate\Database\Schema\PostgresBuilder::morphUsingUlids();
1375513811
}
1375613812
/**
1375713813
* Determine if the given table has a given column.

app/helpers.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
function formatBytes(int $bytes, $precision = 2)
55
{
66
$base = log($bytes, 1024);
7-
$suffixes = array('', 'Kbps', 'Mbps', 'Gbps', 'Tbps');
7+
$suffixes = ['', 'Kbps', 'Mbps', 'Gbps', 'Tbps'];
88

9-
return round(pow(1024, $base - floor($base)), $precision) .' '. $suffixes[floor($base)];
9+
return round(pow(1024, $base - floor($base)), $precision).' '.$suffixes[floor($base)];
1010
}
1111
}

0 commit comments

Comments
 (0)