Docker and Docker Compose add
12
Dockerfile
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
FROM php:8.1-apache
|
||||
|
||||
RUN docker-php-ext-install mysqli
|
||||
|
||||
COPY . /var/www/html/
|
||||
|
||||
RUN chown -R www-data:www-data /var/www/html \
|
||||
&& chmod -R 755 /var/www/html
|
||||
|
||||
RUN a2enmod rewrite
|
||||
|
||||
EXPOSE 80
|
||||
10
README.md
|
|
@ -1,3 +1,11 @@
|
|||
myTinyTodo
|
||||
# My Tiny Todo
|
||||
|
||||
An easy way to organize and manage your to-do lists.
|
||||
|
||||
- **Languages Used:** PHP and jQuery.
|
||||
- **Supported Databases:** PostgreSQL, MySQL, or SQLite.
|
||||
- **License:** Released under the GNU GPL License.
|
||||
|
||||
Start managing your tasks effectively today!
|
||||
|
||||
Original website - http://www.mytinytodo.net/
|
||||
|
|
|
|||
|
|
@ -200,7 +200,6 @@ function checkReadAccess(?int $listId = null)
|
|||
$id = $db->sq("SELECT id FROM {$db->prefix}lists WHERE id=? AND published=1", array($listId));
|
||||
if ($id) return;
|
||||
}
|
||||
http_response_code(403);
|
||||
jsonExit( array('total'=>0, 'list'=>array(), 'denied'=>1) );
|
||||
}
|
||||
|
||||
122
buildtar.php
|
|
@ -1,122 +0,0 @@
|
|||
#!/usr/bin/env php
|
||||
<?php
|
||||
|
||||
// PHP 5.4 is required
|
||||
|
||||
if ( !isset($argv) || !isset($argv[1]) ) {
|
||||
die("Usage: buildtar.php <path_to_repo> [-o source.tar.gz] [-v VERSION]\n");
|
||||
}
|
||||
|
||||
$repo = $argv[1];
|
||||
$dir = sys_get_temp_dir(). DIRECTORY_SEPARATOR. "mytinytodo.build";
|
||||
$curdir = getcwd();
|
||||
$archive = $curdir. DIRECTORY_SEPARATOR. 'mytinytodo-v@VERSION-@REV.tar.gz';
|
||||
$ver = 0;
|
||||
|
||||
while ($arg = next($argv))
|
||||
{
|
||||
if ($arg == '-o') {
|
||||
$archive = next($argv);
|
||||
}
|
||||
elseif ($arg == '-v') {
|
||||
$ver = next($argv);
|
||||
}
|
||||
}
|
||||
|
||||
deleteTreeIfDir($dir);
|
||||
$out = `git clone $repo $dir 2>&1`;
|
||||
if (!is_dir($dir)) {
|
||||
die("Error while clone: $out\n");
|
||||
}
|
||||
print "> Repository was cloned to temp dir: $dir\n";
|
||||
|
||||
#get current version number if not specified
|
||||
if (!$ver) {
|
||||
require_once(__DIR__ . '/src/includes/version.php');
|
||||
$ver = mytinytodo\Version::VERSION;
|
||||
}
|
||||
chdir($dir. DIRECTORY_SEPARATOR. 'src');
|
||||
$rev = trim(`git show --format=format:%H --summary`);
|
||||
$rev = substr($rev, 0, 8);
|
||||
##$ver = str_replace('@REV', $rev, $ver);
|
||||
print "> Version is $ver\n";
|
||||
|
||||
unlink('./docker-config.php');
|
||||
unlink('./includes/lang/en-rtl.json');
|
||||
unlink('./mtt-edit-settings.php');
|
||||
unlink('./content/theme/images/svg2base64.php');
|
||||
|
||||
chdir('..'); # to the root of repo
|
||||
|
||||
assert( strpos(getcwd(), ':') === false ); # FIXME: if path contains a colon ':'
|
||||
echo("> Run Composer\n");
|
||||
$retval = 0;
|
||||
if (false === system( "./composer.sh install --no-dev --no-interaction --optimize-autoloader", $retval) || $retval != 0) {
|
||||
die("Failed to install composer libs via docker\n");
|
||||
}
|
||||
|
||||
# ext
|
||||
if (is_dir('src/ext')) {
|
||||
mkdir('src/ext2');
|
||||
chdir('src/ext');
|
||||
deleteTreeIfDir('_examples');
|
||||
$extCount = 0;
|
||||
$exts = array_diff(scandir('.') ?? [], ['.', '..']);
|
||||
foreach ($exts as $ext) {
|
||||
if (is_dir($ext)) {
|
||||
rename($ext, "../ext2/$ext");
|
||||
$extCount++;
|
||||
}
|
||||
}
|
||||
chdir('../ext2');
|
||||
if ($extCount > 0) {
|
||||
`tar --no-xattrs -czf ../ext/extensions.tar.gz *`; #OS dep.!!!
|
||||
}
|
||||
chdir('../..');
|
||||
deleteTreeIfDir('src/ext2');
|
||||
echo("> Extensions were packed\n");
|
||||
}
|
||||
|
||||
|
||||
rename('src', 'mytinytodo') or die("Cant rename 'src'\n");
|
||||
|
||||
`tar --no-xattrs -czf mytinytodo.tar.gz mytinytodo`; #OS dep.!!!
|
||||
if (!file_exists('mytinytodo.tar.gz')) {
|
||||
die("Failed to pack files (no output tar.gz file)\n");
|
||||
}
|
||||
|
||||
$archive = str_replace('@VERSION', $ver, $archive);
|
||||
$archive = str_replace('@REV', $rev, $archive);
|
||||
|
||||
chdir($curdir);
|
||||
if ( ! rename("$dir/mytinytodo.tar.gz", $archive) ) {
|
||||
die("Failed to move mytinytodo.tar.gz to $archive");
|
||||
}
|
||||
|
||||
deleteTreeIfDir($dir);
|
||||
echo("> Temp dir was cleaned\n");
|
||||
|
||||
echo("> Build is stored in $archive\n");
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
function deleteTreeIfDir($dir)
|
||||
{
|
||||
if ( !is_dir($dir) ) {
|
||||
return;
|
||||
}
|
||||
switch (PHP_OS) {
|
||||
case 'Darwin':
|
||||
case 'Linux':
|
||||
system("rm -rf ". escapeshellarg($dir));
|
||||
break;
|
||||
case 'Windows':
|
||||
system("rmdir /s /q ". escapeshellarg($dir));
|
||||
break;
|
||||
default:
|
||||
die("Unknown system ". PHP_OS. "\n");
|
||||
}
|
||||
}
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
{
|
||||
"name": "maxpozdeev/mytinytodo",
|
||||
"type": "project",
|
||||
"license": "GPL-2.0-or-later",
|
||||
"homepage": "https://mytinytodo.net",
|
||||
"authors": [
|
||||
{
|
||||
"name": "Max Pozdeev",
|
||||
"role": "Developer"
|
||||
}
|
||||
],
|
||||
"config": {
|
||||
"vendor-dir": "src/includes/vendor"
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.2",
|
||||
"ext-mbstring": "*",
|
||||
"erusev/parsedown": "^1.7",
|
||||
"symfony/polyfill-intl-normalizer": "^1.31"
|
||||
},
|
||||
"require-dev": {
|
||||
"league/commonmark": "^2.6"
|
||||
}
|
||||
}
|
||||
763
composer.lock
generated
|
|
@ -1,763 +0,0 @@
|
|||
{
|
||||
"_readme": [
|
||||
"This file locks the dependencies of your project to a known state",
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "282581dc840171ff5aaaf39ad242a12a",
|
||||
"packages": [
|
||||
{
|
||||
"name": "erusev/parsedown",
|
||||
"version": "1.7.4",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/erusev/parsedown.git",
|
||||
"reference": "cb17b6477dfff935958ba01325f2e8a2bfa6dab3"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/erusev/parsedown/zipball/cb17b6477dfff935958ba01325f2e8a2bfa6dab3",
|
||||
"reference": "cb17b6477dfff935958ba01325f2e8a2bfa6dab3",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-mbstring": "*",
|
||||
"php": ">=5.3.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^4.8.35"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Parsedown": ""
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Emanuil Rusev",
|
||||
"email": "hello@erusev.com",
|
||||
"homepage": "http://erusev.com"
|
||||
}
|
||||
],
|
||||
"description": "Parser for Markdown.",
|
||||
"homepage": "http://parsedown.org",
|
||||
"keywords": [
|
||||
"markdown",
|
||||
"parser"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/erusev/parsedown/issues",
|
||||
"source": "https://github.com/erusev/parsedown/tree/1.7.x"
|
||||
},
|
||||
"time": "2019-12-30T22:54:17+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-intl-normalizer",
|
||||
"version": "v1.31.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-intl-normalizer.git",
|
||||
"reference": "3833d7255cc303546435cb650316bff708a1c75c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/3833d7255cc303546435cb650316bff708a1c75c",
|
||||
"reference": "3833d7255cc303546435cb650316bff708a1c75c",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.2"
|
||||
},
|
||||
"suggest": {
|
||||
"ext-intl": "For best performance"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"thanks": {
|
||||
"url": "https://github.com/symfony/polyfill",
|
||||
"name": "symfony/polyfill"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"files": [
|
||||
"bootstrap.php"
|
||||
],
|
||||
"psr-4": {
|
||||
"Symfony\\Polyfill\\Intl\\Normalizer\\": ""
|
||||
},
|
||||
"classmap": [
|
||||
"Resources/stubs"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Nicolas Grekas",
|
||||
"email": "p@tchwork.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony polyfill for intl's Normalizer class and related functions",
|
||||
"homepage": "https://symfony.com",
|
||||
"keywords": [
|
||||
"compatibility",
|
||||
"intl",
|
||||
"normalizer",
|
||||
"polyfill",
|
||||
"portable",
|
||||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.31.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-09-09T11:45:10+00:00"
|
||||
}
|
||||
],
|
||||
"packages-dev": [
|
||||
{
|
||||
"name": "dflydev/dot-access-data",
|
||||
"version": "v3.0.3",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/dflydev/dflydev-dot-access-data.git",
|
||||
"reference": "a23a2bf4f31d3518f3ecb38660c95715dfead60f"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/dflydev/dflydev-dot-access-data/zipball/a23a2bf4f31d3518f3ecb38660c95715dfead60f",
|
||||
"reference": "a23a2bf4f31d3518f3ecb38660c95715dfead60f",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^7.1 || ^8.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpstan/phpstan": "^0.12.42",
|
||||
"phpunit/phpunit": "^7.5 || ^8.5 || ^9.3",
|
||||
"scrutinizer/ocular": "1.6.0",
|
||||
"squizlabs/php_codesniffer": "^3.5",
|
||||
"vimeo/psalm": "^4.0.0"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-main": "3.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Dflydev\\DotAccessData\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Dragonfly Development Inc.",
|
||||
"email": "info@dflydev.com",
|
||||
"homepage": "http://dflydev.com"
|
||||
},
|
||||
{
|
||||
"name": "Beau Simensen",
|
||||
"email": "beau@dflydev.com",
|
||||
"homepage": "http://beausimensen.com"
|
||||
},
|
||||
{
|
||||
"name": "Carlos Frutos",
|
||||
"email": "carlos@kiwing.it",
|
||||
"homepage": "https://github.com/cfrutos"
|
||||
},
|
||||
{
|
||||
"name": "Colin O'Dell",
|
||||
"email": "colinodell@gmail.com",
|
||||
"homepage": "https://www.colinodell.com"
|
||||
}
|
||||
],
|
||||
"description": "Given a deep data structure, access data by dot notation.",
|
||||
"homepage": "https://github.com/dflydev/dflydev-dot-access-data",
|
||||
"keywords": [
|
||||
"access",
|
||||
"data",
|
||||
"dot",
|
||||
"notation"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/dflydev/dflydev-dot-access-data/issues",
|
||||
"source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.3"
|
||||
},
|
||||
"time": "2024-07-08T12:26:09+00:00"
|
||||
},
|
||||
{
|
||||
"name": "league/commonmark",
|
||||
"version": "2.6.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/thephpleague/commonmark.git",
|
||||
"reference": "d990688c91cedfb69753ffc2512727ec646df2ad"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/thephpleague/commonmark/zipball/d990688c91cedfb69753ffc2512727ec646df2ad",
|
||||
"reference": "d990688c91cedfb69753ffc2512727ec646df2ad",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-mbstring": "*",
|
||||
"league/config": "^1.1.1",
|
||||
"php": "^7.4 || ^8.0",
|
||||
"psr/event-dispatcher": "^1.0",
|
||||
"symfony/deprecation-contracts": "^2.1 || ^3.0",
|
||||
"symfony/polyfill-php80": "^1.16"
|
||||
},
|
||||
"require-dev": {
|
||||
"cebe/markdown": "^1.0",
|
||||
"commonmark/cmark": "0.31.1",
|
||||
"commonmark/commonmark.js": "0.31.1",
|
||||
"composer/package-versions-deprecated": "^1.8",
|
||||
"embed/embed": "^4.4",
|
||||
"erusev/parsedown": "^1.0",
|
||||
"ext-json": "*",
|
||||
"github/gfm": "0.29.0",
|
||||
"michelf/php-markdown": "^1.4 || ^2.0",
|
||||
"nyholm/psr7": "^1.5",
|
||||
"phpstan/phpstan": "^1.8.2",
|
||||
"phpunit/phpunit": "^9.5.21 || ^10.5.9 || ^11.0.0",
|
||||
"scrutinizer/ocular": "^1.8.1",
|
||||
"symfony/finder": "^5.3 | ^6.0 | ^7.0",
|
||||
"symfony/process": "^5.4 | ^6.0 | ^7.0",
|
||||
"symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0 | ^7.0",
|
||||
"unleashedtech/php-coding-standard": "^3.1.1",
|
||||
"vimeo/psalm": "^4.24.0 || ^5.0.0"
|
||||
},
|
||||
"suggest": {
|
||||
"symfony/yaml": "v2.3+ required if using the Front Matter extension"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-main": "2.7-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"League\\CommonMark\\": "src"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"BSD-3-Clause"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Colin O'Dell",
|
||||
"email": "colinodell@gmail.com",
|
||||
"homepage": "https://www.colinodell.com",
|
||||
"role": "Lead Developer"
|
||||
}
|
||||
],
|
||||
"description": "Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and GitHub-Flavored Markdown (GFM)",
|
||||
"homepage": "https://commonmark.thephpleague.com",
|
||||
"keywords": [
|
||||
"commonmark",
|
||||
"flavored",
|
||||
"gfm",
|
||||
"github",
|
||||
"github-flavored",
|
||||
"markdown",
|
||||
"md",
|
||||
"parser"
|
||||
],
|
||||
"support": {
|
||||
"docs": "https://commonmark.thephpleague.com/",
|
||||
"forum": "https://github.com/thephpleague/commonmark/discussions",
|
||||
"issues": "https://github.com/thephpleague/commonmark/issues",
|
||||
"rss": "https://github.com/thephpleague/commonmark/releases.atom",
|
||||
"source": "https://github.com/thephpleague/commonmark"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://www.colinodell.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://www.paypal.me/colinpodell/10.00",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/colinodell",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/league/commonmark",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-12-29T14:10:59+00:00"
|
||||
},
|
||||
{
|
||||
"name": "league/config",
|
||||
"version": "v1.2.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/thephpleague/config.git",
|
||||
"reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/thephpleague/config/zipball/754b3604fb2984c71f4af4a9cbe7b57f346ec1f3",
|
||||
"reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"dflydev/dot-access-data": "^3.0.1",
|
||||
"nette/schema": "^1.2",
|
||||
"php": "^7.4 || ^8.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpstan/phpstan": "^1.8.2",
|
||||
"phpunit/phpunit": "^9.5.5",
|
||||
"scrutinizer/ocular": "^1.8.1",
|
||||
"unleashedtech/php-coding-standard": "^3.1",
|
||||
"vimeo/psalm": "^4.7.3"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-main": "1.2-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"League\\Config\\": "src"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"BSD-3-Clause"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Colin O'Dell",
|
||||
"email": "colinodell@gmail.com",
|
||||
"homepage": "https://www.colinodell.com",
|
||||
"role": "Lead Developer"
|
||||
}
|
||||
],
|
||||
"description": "Define configuration arrays with strict schemas and access values with dot notation",
|
||||
"homepage": "https://config.thephpleague.com",
|
||||
"keywords": [
|
||||
"array",
|
||||
"config",
|
||||
"configuration",
|
||||
"dot",
|
||||
"dot-access",
|
||||
"nested",
|
||||
"schema"
|
||||
],
|
||||
"support": {
|
||||
"docs": "https://config.thephpleague.com/",
|
||||
"issues": "https://github.com/thephpleague/config/issues",
|
||||
"rss": "https://github.com/thephpleague/config/releases.atom",
|
||||
"source": "https://github.com/thephpleague/config"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://www.colinodell.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://www.paypal.me/colinpodell/10.00",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/colinodell",
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2022-12-11T20:36:23+00:00"
|
||||
},
|
||||
{
|
||||
"name": "nette/schema",
|
||||
"version": "v1.3.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/nette/schema.git",
|
||||
"reference": "da801d52f0354f70a638673c4a0f04e16529431d"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/nette/schema/zipball/da801d52f0354f70a638673c4a0f04e16529431d",
|
||||
"reference": "da801d52f0354f70a638673c4a0f04e16529431d",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"nette/utils": "^4.0",
|
||||
"php": "8.1 - 8.4"
|
||||
},
|
||||
"require-dev": {
|
||||
"nette/tester": "^2.5.2",
|
||||
"phpstan/phpstan-nette": "^1.0",
|
||||
"tracy/tracy": "^2.8"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "1.3-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"classmap": [
|
||||
"src/"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"BSD-3-Clause",
|
||||
"GPL-2.0-only",
|
||||
"GPL-3.0-only"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "David Grudl",
|
||||
"homepage": "https://davidgrudl.com"
|
||||
},
|
||||
{
|
||||
"name": "Nette Community",
|
||||
"homepage": "https://nette.org/contributors"
|
||||
}
|
||||
],
|
||||
"description": "📐 Nette Schema: validating data structures against a given Schema.",
|
||||
"homepage": "https://nette.org",
|
||||
"keywords": [
|
||||
"config",
|
||||
"nette"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/nette/schema/issues",
|
||||
"source": "https://github.com/nette/schema/tree/v1.3.2"
|
||||
},
|
||||
"time": "2024-10-06T23:10:23+00:00"
|
||||
},
|
||||
{
|
||||
"name": "nette/utils",
|
||||
"version": "v4.0.5",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/nette/utils.git",
|
||||
"reference": "736c567e257dbe0fcf6ce81b4d6dbe05c6899f96"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/nette/utils/zipball/736c567e257dbe0fcf6ce81b4d6dbe05c6899f96",
|
||||
"reference": "736c567e257dbe0fcf6ce81b4d6dbe05c6899f96",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "8.0 - 8.4"
|
||||
},
|
||||
"conflict": {
|
||||
"nette/finder": "<3",
|
||||
"nette/schema": "<1.2.2"
|
||||
},
|
||||
"require-dev": {
|
||||
"jetbrains/phpstorm-attributes": "dev-master",
|
||||
"nette/tester": "^2.5",
|
||||
"phpstan/phpstan": "^1.0",
|
||||
"tracy/tracy": "^2.9"
|
||||
},
|
||||
"suggest": {
|
||||
"ext-gd": "to use Image",
|
||||
"ext-iconv": "to use Strings::webalize(), toAscii(), chr() and reverse()",
|
||||
"ext-intl": "to use Strings::webalize(), toAscii(), normalize() and compare()",
|
||||
"ext-json": "to use Nette\\Utils\\Json",
|
||||
"ext-mbstring": "to use Strings::lower() etc...",
|
||||
"ext-tokenizer": "to use Nette\\Utils\\Reflection::getUseStatements()"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "4.0-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"classmap": [
|
||||
"src/"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"BSD-3-Clause",
|
||||
"GPL-2.0-only",
|
||||
"GPL-3.0-only"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "David Grudl",
|
||||
"homepage": "https://davidgrudl.com"
|
||||
},
|
||||
{
|
||||
"name": "Nette Community",
|
||||
"homepage": "https://nette.org/contributors"
|
||||
}
|
||||
],
|
||||
"description": "🛠 Nette Utils: lightweight utilities for string & array manipulation, image handling, safe JSON encoding/decoding, validation, slug or strong password generating etc.",
|
||||
"homepage": "https://nette.org",
|
||||
"keywords": [
|
||||
"array",
|
||||
"core",
|
||||
"datetime",
|
||||
"images",
|
||||
"json",
|
||||
"nette",
|
||||
"paginator",
|
||||
"password",
|
||||
"slugify",
|
||||
"string",
|
||||
"unicode",
|
||||
"utf-8",
|
||||
"utility",
|
||||
"validation"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/nette/utils/issues",
|
||||
"source": "https://github.com/nette/utils/tree/v4.0.5"
|
||||
},
|
||||
"time": "2024-08-07T15:39:19+00:00"
|
||||
},
|
||||
{
|
||||
"name": "psr/event-dispatcher",
|
||||
"version": "1.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/php-fig/event-dispatcher.git",
|
||||
"reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0",
|
||||
"reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.2.0"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "1.0.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Psr\\EventDispatcher\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "PHP-FIG",
|
||||
"homepage": "http://www.php-fig.org/"
|
||||
}
|
||||
],
|
||||
"description": "Standard interfaces for event handling.",
|
||||
"keywords": [
|
||||
"events",
|
||||
"psr",
|
||||
"psr-14"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/php-fig/event-dispatcher/issues",
|
||||
"source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0"
|
||||
},
|
||||
"time": "2019-01-08T18:20:26+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/deprecation-contracts",
|
||||
"version": "v3.5.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/deprecation-contracts.git",
|
||||
"reference": "74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6",
|
||||
"reference": "74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=8.1"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"thanks": {
|
||||
"url": "https://github.com/symfony/contracts",
|
||||
"name": "symfony/contracts"
|
||||
},
|
||||
"branch-alias": {
|
||||
"dev-main": "3.5-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"files": [
|
||||
"function.php"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Nicolas Grekas",
|
||||
"email": "p@tchwork.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "A generic function and convention to trigger deprecation notices",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/deprecation-contracts/tree/v3.5.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-09-25T14:20:29+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-php80",
|
||||
"version": "v1.31.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-php80.git",
|
||||
"reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/60328e362d4c2c802a54fcbf04f9d3fb892b4cf8",
|
||||
"reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.2"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"thanks": {
|
||||
"url": "https://github.com/symfony/polyfill",
|
||||
"name": "symfony/polyfill"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"files": [
|
||||
"bootstrap.php"
|
||||
],
|
||||
"psr-4": {
|
||||
"Symfony\\Polyfill\\Php80\\": ""
|
||||
},
|
||||
"classmap": [
|
||||
"Resources/stubs"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Ion Bazan",
|
||||
"email": "ion.bazan@gmail.com"
|
||||
},
|
||||
{
|
||||
"name": "Nicolas Grekas",
|
||||
"email": "p@tchwork.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
|
||||
"homepage": "https://symfony.com",
|
||||
"keywords": [
|
||||
"compatibility",
|
||||
"polyfill",
|
||||
"portable",
|
||||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-php80/tree/v1.31.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-09-09T11:45:10+00:00"
|
||||
}
|
||||
],
|
||||
"aliases": [],
|
||||
"minimum-stability": "stable",
|
||||
"stability-flags": {},
|
||||
"prefer-stable": false,
|
||||
"prefer-lowest": false,
|
||||
"platform": {
|
||||
"php": ">=7.2",
|
||||
"ext-mbstring": "*"
|
||||
},
|
||||
"platform-dev": {},
|
||||
"plugin-api-version": "2.6.0"
|
||||
}
|
||||
11
composer.sh
|
|
@ -1,11 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
#dir="$( dirname -- "$( readlink -f -- "$0"; )"; )"
|
||||
dir="$PWD"
|
||||
|
||||
app=$(which podman)
|
||||
if [ -z $app ]; then
|
||||
app="docker"
|
||||
fi
|
||||
|
||||
$app run -it --rm -v "$dir:/app" composer $@
|
||||
|
Before Width: | Height: | Size: 237 B After Width: | Height: | Size: 237 B |
|
Before Width: | Height: | Size: 118 B After Width: | Height: | Size: 118 B |
|
Before Width: | Height: | Size: 117 B After Width: | Height: | Size: 117 B |
|
Before Width: | Height: | Size: 115 B After Width: | Height: | Size: 115 B |
|
Before Width: | Height: | Size: 217 B After Width: | Height: | Size: 217 B |
|
Before Width: | Height: | Size: 491 B After Width: | Height: | Size: 491 B |
|
Before Width: | Height: | Size: 149 B After Width: | Height: | Size: 149 B |
|
Before Width: | Height: | Size: 190 B After Width: | Height: | Size: 190 B |
|
Before Width: | Height: | Size: 6.8 KiB After Width: | Height: | Size: 6.8 KiB |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
|
Before Width: | Height: | Size: 394 B After Width: | Height: | Size: 394 B |
|
Before Width: | Height: | Size: 318 B After Width: | Height: | Size: 318 B |
|
Before Width: | Height: | Size: 217 B After Width: | Height: | Size: 217 B |
|
Before Width: | Height: | Size: 211 B After Width: | Height: | Size: 211 B |
|
Before Width: | Height: | Size: 517 B After Width: | Height: | Size: 517 B |
|
Before Width: | Height: | Size: 519 B After Width: | Height: | Size: 519 B |
|
Before Width: | Height: | Size: 528 B After Width: | Height: | Size: 528 B |
|
Before Width: | Height: | Size: 177 B After Width: | Height: | Size: 177 B |
|
Before Width: | Height: | Size: 148 B After Width: | Height: | Size: 148 B |
|
Before Width: | Height: | Size: 148 B After Width: | Height: | Size: 148 B |
|
Before Width: | Height: | Size: 200 B After Width: | Height: | Size: 200 B |
|
Before Width: | Height: | Size: 260 B After Width: | Height: | Size: 260 B |
|
Before Width: | Height: | Size: 216 B After Width: | Height: | Size: 216 B |
|
Before Width: | Height: | Size: 259 B After Width: | Height: | Size: 259 B |
16
docker-compose.yml
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
version: '3.8'
|
||||
|
||||
services:
|
||||
app:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
container_name: mytinytodo_app
|
||||
ports:
|
||||
- "8080:80"
|
||||
volumes:
|
||||
- ./db:/var/www/html/db
|
||||
|
||||
volumes:
|
||||
db_data:
|
||||
|
||||
1
docker/dev/.gitignore
vendored
|
|
@ -1 +0,0 @@
|
|||
*/db_data
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
[mysqld]
|
||||
collation-server = utf8mb4_unicode_ci
|
||||
character-set-server = utf8mb4
|
||||
innodb_log_file_size=10M
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
[mysqld]
|
||||
collation-server = utf8mb4_unicode_ci
|
||||
character-set-server = utf8mb4
|
||||
innodb_log_file_size=10M
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
[mysqld]
|
||||
collation-server = utf8mb4_unicode_ci
|
||||
character-set-server = utf8mb4
|
||||
innodb_log_file_size=10M
|
||||
|
|
@ -1,23 +0,0 @@
|
|||
FROM alpine:latest
|
||||
|
||||
RUN set -x \
|
||||
&& apk add --no-cache ca-certificates curl \
|
||||
&& curl -o /etc/apk/keys/angie-signing.rsa https://angie.software/keys/angie-signing.rsa \
|
||||
&& echo "https://download.angie.software/angie/alpine/v$(egrep -o '[0-9]+\.[0-9]+' /etc/alpine-release)/main" >> /etc/apk/repositories \
|
||||
&& apk add --no-cache angie \
|
||||
&& rm /etc/apk/keys/angie-signing.rsa \
|
||||
&& ln -sf /dev/stdout /var/log/angie/access.log \
|
||||
&& ln -sf /dev/stderr /var/log/angie/error.log
|
||||
|
||||
EXPOSE 80
|
||||
CMD ["angie", "-g", "daemon off;"]
|
||||
|
||||
|
||||
RUN mv /etc/angie/http.d/default.conf /etc/angie/http.d/default.conf.bak \
|
||||
&& mkdir /var/log/nginx \
|
||||
&& ln -sf /var/log/angie/access.log /var/log/nginx/access.log
|
||||
|
||||
# config from nginx
|
||||
COPY default.conf /etc/angie/http.d/default.conf
|
||||
|
||||
VOLUME /var/www/html
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
FROM nginx:latest
|
||||
|
||||
COPY default.conf /etc/nginx/conf.d/
|
||||
|
||||
VOLUME /var/www/html
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
FROM nginx:alpine
|
||||
|
||||
COPY default.conf /etc/nginx/conf.d/
|
||||
|
||||
VOLUME /var/www/html
|
||||
|
|
@ -1,59 +0,0 @@
|
|||
# format like 'main' excluding user agent
|
||||
log_format mtt '$time_local "$request" $status $body_bytes_sent "$http_referer"';
|
||||
log_format mtt2 '$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer"';
|
||||
access_log off;
|
||||
|
||||
upstream fpm {
|
||||
server fpm:9000;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name localhost;
|
||||
root /var/www/html; # same as php-fpm
|
||||
|
||||
access_log /var/log/nginx/access.log mtt;
|
||||
|
||||
index index.php index.html;
|
||||
autoindex off;
|
||||
|
||||
location = /phpinfo {
|
||||
include fastcgi_params;
|
||||
fastcgi_param SCRIPT_FILENAME /var/www/phpinfo/phpinfo.php;
|
||||
fastcgi_pass fpm;
|
||||
}
|
||||
|
||||
location /api/ {
|
||||
rewrite ^/api/(.*) /api.php/$1 last;
|
||||
}
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ =404;
|
||||
}
|
||||
|
||||
location ~ [^/]\.php(/|$) {
|
||||
|
||||
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
|
||||
if (!-f $document_root$fastcgi_script_name) {
|
||||
return 404;
|
||||
}
|
||||
include fastcgi_params;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
fastcgi_param PATH_INFO $fastcgi_path_info;
|
||||
fastcgi_index index.php;
|
||||
fastcgi_pass fpm;
|
||||
}
|
||||
|
||||
location /db/ {
|
||||
return 404; #deny all
|
||||
}
|
||||
|
||||
location /includes/ {
|
||||
return 404; #deny all
|
||||
}
|
||||
|
||||
location ~ /\.ht {
|
||||
return 404; #deny all
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -1 +0,0 @@
|
|||
PLATFORM_NAME=mtt-dev-php72-angie-postgres10
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
FROM php:7.2-fpm-alpine
|
||||
|
||||
RUN apk add --update-cache libpq postgresql-dev && \
|
||||
docker-php-ext-install pdo_mysql pdo_pgsql && \
|
||||
apk del postgresql-dev && rm -rf /var/cache/apk/* && \
|
||||
mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini" && \
|
||||
mkdir /var/www/phpinfo && \
|
||||
echo "<?php phpinfo();" > /var/www/phpinfo/phpinfo.php && \
|
||||
curl -o /usr/local/bin/phpunit -fL "https://phar.phpunit.de/phpunit-8.phar" && \
|
||||
chmod +x /usr/local/bin/phpunit && \
|
||||
ln -s html /var/www/src
|
||||
|
||||
COPY php-mtt.ini /usr/local/etc/php/conf.d/
|
||||
COPY php-opcache.ini /usr/local/etc/php/conf.d/
|
||||
COPY php-fpm-www.conf /usr/local/etc/php-fpm.d/www.conf
|
||||
|
||||
VOLUME /var/www/html
|
||||
|
|
@ -1,58 +0,0 @@
|
|||
version: "3.9"
|
||||
|
||||
networks:
|
||||
network:
|
||||
name: "${PLATFORM_NAME}-network"
|
||||
|
||||
services:
|
||||
web:
|
||||
build:
|
||||
context: ../_nginx
|
||||
dockerfile: Dockerfile-angie-alpine
|
||||
image: mtt-dev/angie:alpine
|
||||
container_name: ${PLATFORM_NAME}-web
|
||||
ports:
|
||||
- "8080:80"
|
||||
volumes:
|
||||
- ../../../src:/var/www/html
|
||||
depends_on:
|
||||
- fpm
|
||||
networks:
|
||||
- network
|
||||
|
||||
fpm:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile-fpm
|
||||
image: mtt-dev/php:7.2-fpm-alpine
|
||||
container_name: ${PLATFORM_NAME}-fpm
|
||||
environment:
|
||||
- MTT_ENABLE_DEBUG=YES
|
||||
- MTT_DB_TYPE=postgres
|
||||
- MTT_API_USE_PATH_INFO=YES
|
||||
- MTT_DB_HOST=db
|
||||
- MTT_DB_NAME=mtt
|
||||
- MTT_DB_USER=mtt
|
||||
- MTT_DB_PASSWORD=mtt
|
||||
- MTT_DB_PREFIX=mtt_
|
||||
volumes:
|
||||
- ../../../src:/var/www/html
|
||||
- ../../../tests:/var/www/tests
|
||||
- ./php-mtt.ini:/usr/local/etc/php/conf.d/php-mtt.ini
|
||||
- ./php-opcache.ini:/usr/local/etc/php/conf.d/php-opcache.ini
|
||||
networks:
|
||||
- network
|
||||
|
||||
db:
|
||||
# do not use alpine image due to missing locales
|
||||
image: postgres:10.0
|
||||
container_name: ${PLATFORM_NAME}-db
|
||||
userns_mode: keep-id
|
||||
environment:
|
||||
POSTGRES_PASSWORD: mtt
|
||||
POSTGRES_USER: mtt
|
||||
POSTGRES_DB: mtt
|
||||
volumes:
|
||||
- ../_postgres10/db_data:/var/lib/postgresql/data
|
||||
networks:
|
||||
- network
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
[www]
|
||||
user = www-data
|
||||
group = www-data
|
||||
listen = 127.0.0.1:9000
|
||||
pm = dynamic
|
||||
pm.max_children = 5
|
||||
pm.start_servers = 2
|
||||
pm.min_spare_servers = 1
|
||||
pm.max_spare_servers = 3
|
||||
pm.max_requests = 500
|
||||
|
||||
access.format = "%R - %u [%t] \"%m %r\" %s %f"
|
||||
access.log = /dev/null
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
|
||||
; Since PHP 5.4 E_STRICT is included in E_ALL
|
||||
error_reporting = E_ALL
|
||||
|
||||
log_errors = On
|
||||
display_errors = On
|
||||
display_startup_errors = On
|
||||
|
||||
cgi.fix_pathinfo=0
|
||||
session.gc_divisor = 100
|
||||
|
|
@ -1,42 +0,0 @@
|
|||
;; opcache.ini
|
||||
|
||||
;; check /usr/local/etc/php/conf.d if exists docker-php-ext-opcache.ini
|
||||
|
||||
; To disable opcache just comment this line
|
||||
zend_extension=opcache.so
|
||||
|
||||
[opcache]
|
||||
opcache.enable=1
|
||||
opcache.enable_cli=1
|
||||
|
||||
; JIT will work only if opcache is enabled and jit_buffer_size is not zero.
|
||||
; To disable JIT set the buffer size to 0.
|
||||
opcache.jit_buffer_size=64M
|
||||
|
||||
; JIT mode. Read more at https://www.php.net/manual/en/opcache.configuration.php#ini.opcache.jit
|
||||
; Default is tracing.
|
||||
opcache.jit=tracing
|
||||
|
||||
; The size of the shared memory storage used by OPcache, in megabytes. The minimum permissible value is "8", which is enforced if a smaller value is set.
|
||||
; Default is 128.
|
||||
opcache.memory_consumption=128
|
||||
|
||||
; The maximum number of keys (and therefore scripts) in the OPcache hash table.
|
||||
; The actual value used will be the first number in the set of prime numbers
|
||||
; { 223, 463, 983, 1979, 3907, 7963, 16229, 32531, 65407, 130987, 262237, 524521, 1048793 }
|
||||
; that is greater than or equal to the configured value.
|
||||
; The minimum value is 200. The maximum value is 1000000. Values outside of this range are clamped to the permissible range.
|
||||
; Default is 10000.
|
||||
opcache.max_accelerated_files=1000
|
||||
|
||||
; How often to check script timestamps for updates, in seconds. 0 will result in OPcache checking for updates on every request.
|
||||
; This configuration directive is ignored if opcache.validate_timestamps is disabled.
|
||||
; Default is 2.
|
||||
opcache.revalidate_freq=2
|
||||
|
||||
; If enabled, OPcache will check for updated scripts every opcache.revalidate_freq seconds.
|
||||
; When this directive is disabled, you must reset OPcache manually via opcache_reset(), opcache_invalidate()
|
||||
; or by restarting the Web server for changes to the filesystem to take effect.
|
||||
; Default is 1.
|
||||
;; Override in docker-compose
|
||||
opcache.validate_timestamps=1
|
||||
|
|
@ -1 +0,0 @@
|
|||
PLATFORM_NAME=mtt-dev-php72-apache-mariadb100
|
||||
|
|
@ -1,47 +0,0 @@
|
|||
version: "3.9"
|
||||
|
||||
networks:
|
||||
network:
|
||||
name: "${PLATFORM_NAME}-network"
|
||||
|
||||
services:
|
||||
web:
|
||||
build:
|
||||
context: ../mtt-php72-apache/
|
||||
dockerfile: Dockerfile-web
|
||||
image: mtt-dev/php:7.2-apache
|
||||
container_name: ${PLATFORM_NAME}-web
|
||||
ports:
|
||||
- "8080:80"
|
||||
environment:
|
||||
- MTT_ENABLE_DEBUG=YES
|
||||
- MTT_DB_TYPE=mysql
|
||||
- MTT_DB_HOST=db
|
||||
- MTT_DB_NAME=mytinytodo
|
||||
- MTT_DB_USER=mtt
|
||||
- MTT_DB_PASSWORD=mtt
|
||||
- MTT_DB_PREFIX=mtt_
|
||||
- MTT_DB_DRIVER=mysqli
|
||||
volumes:
|
||||
- ../../../src:/var/www/html
|
||||
- ../mtt-php72-apache/php-mtt.ini:/usr/local/etc/php/conf.d/php-mtt.ini
|
||||
- ../mtt-php72-apache/php-opcache.ini:/usr/local/etc/php/conf.d/php-opcache.ini
|
||||
depends_on:
|
||||
- db
|
||||
networks:
|
||||
- network
|
||||
|
||||
db:
|
||||
image: mariadb:10.0.15
|
||||
container_name: ${PLATFORM_NAME}-db
|
||||
#restart: always
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: JustForDev
|
||||
MYSQL_USER: mtt
|
||||
MYSQL_PASSWORD: mtt
|
||||
MYSQL_DATABASE: mytinytodo
|
||||
volumes:
|
||||
- ../_mariadb100/my.cnf:/etc/mysql/conf.d/my.cnf
|
||||
- ../_mariadb100/db_data:/var/lib/mysql
|
||||
networks:
|
||||
- network
|
||||
|
|
@ -1 +0,0 @@
|
|||
PLATFORM_NAME=mtt-dev-php72-apache-mariadb105
|
||||
|
|
@ -1,47 +0,0 @@
|
|||
version: "3.9"
|
||||
|
||||
networks:
|
||||
network:
|
||||
name: "${PLATFORM_NAME}-network"
|
||||
|
||||
services:
|
||||
web:
|
||||
build:
|
||||
context: ../mtt-php72-apache/
|
||||
dockerfile: Dockerfile-web
|
||||
image: mtt-dev/php:7.2-apache
|
||||
container_name: ${PLATFORM_NAME}-web
|
||||
ports:
|
||||
- "8080:80"
|
||||
environment:
|
||||
- MTT_ENABLE_DEBUG=YES
|
||||
- MTT_DB_TYPE=mysql
|
||||
- MTT_DB_HOST=db
|
||||
- MTT_DB_NAME=mytinytodo
|
||||
- MTT_DB_USER=mtt
|
||||
- MTT_DB_PASSWORD=mtt
|
||||
- MTT_DB_PREFIX=mtt_
|
||||
- MTT_DB_DRIVER=mysqli
|
||||
volumes:
|
||||
- ../../../src:/var/www/html
|
||||
- ../mtt-php72-apache/php-mtt.ini:/usr/local/etc/php/conf.d/php-mtt.ini
|
||||
- ../mtt-php72-apache/php-opcache.ini:/usr/local/etc/php/conf.d/php-opcache.ini
|
||||
depends_on:
|
||||
- db
|
||||
networks:
|
||||
- network
|
||||
|
||||
db:
|
||||
image: mariadb:10.5
|
||||
container_name: ${PLATFORM_NAME}-db
|
||||
#restart: always
|
||||
environment:
|
||||
MARIADB_ROOT_PASSWORD: JustForDev
|
||||
MARIADB_USER: mtt
|
||||
MARIADB_PASSWORD: mtt
|
||||
MARIADB_DATABASE: mytinytodo
|
||||
volumes:
|
||||
- ../_mariadb105/my.cnf:/etc/mysql/conf.d/my.cnf
|
||||
- ../_mariadb105/db_data:/var/lib/mysql
|
||||
networks:
|
||||
- network
|
||||
|
|
@ -1 +0,0 @@
|
|||
PLATFORM_NAME=mtt-dev-php72-apache-postgres10
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
version: "3.9"
|
||||
|
||||
networks:
|
||||
network:
|
||||
name: "${PLATFORM_NAME}-network"
|
||||
|
||||
services:
|
||||
web:
|
||||
build:
|
||||
context: ../mtt-php72-apache/
|
||||
dockerfile: Dockerfile-web
|
||||
image: mtt-dev/php:7.2-apache
|
||||
container_name: ${PLATFORM_NAME}-web
|
||||
ports:
|
||||
- "8080:80"
|
||||
environment:
|
||||
- MTT_ENABLE_DEBUG=YES
|
||||
- MTT_DB_TYPE=postgres
|
||||
- MTT_DB_HOST=db
|
||||
- MTT_DB_NAME=mtt
|
||||
- MTT_DB_USER=mtt
|
||||
- MTT_DB_PASSWORD=mtt
|
||||
- MTT_DB_PREFIX=mtt_
|
||||
volumes:
|
||||
- ../../../src:/var/www/html
|
||||
- ../mtt-php72-apache/php-mtt.ini:/usr/local/etc/php/conf.d/php-mtt.ini
|
||||
- ../mtt-php72-apache/php-opcache.ini:/usr/local/etc/php/conf.d/php-opcache.ini
|
||||
depends_on:
|
||||
- db
|
||||
networks:
|
||||
- network
|
||||
|
||||
db:
|
||||
# do not use alpine image due to missing locales
|
||||
image: postgres:10.0
|
||||
container_name: ${PLATFORM_NAME}-db
|
||||
userns_mode: keep-id
|
||||
environment:
|
||||
POSTGRES_PASSWORD: mtt
|
||||
POSTGRES_USER: mtt
|
||||
POSTGRES_DB: mtt
|
||||
volumes:
|
||||
- ../_postgres10/db_data:/var/lib/postgresql/data
|
||||
networks:
|
||||
- network
|
||||
|
|
@ -1 +0,0 @@
|
|||
PLATFORM_NAME=mtt-dev-php72-apache
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
FROM php:7.2-apache-buster
|
||||
|
||||
RUN apt-get update && apt-get install -y libpq5 libpq-dev && \
|
||||
docker-php-ext-install mysqli pdo_pgsql && \
|
||||
apt-get remove -y libpq-dev && apt-get -y autoremove && \
|
||||
mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini" && \
|
||||
mkdir /var/www/phpinfo && \
|
||||
echo "<?php\nphpinfo();" > /var/www/phpinfo/phpinfo.php && \
|
||||
echo 'Alias "/phpinfo" "/var/www/phpinfo/phpinfo.php"' > /etc/apache2/conf-enabled/phpinfo.conf && \
|
||||
echo 'LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\"" combined' > /etc/apache2/conf-enabled/logformat.conf && \
|
||||
a2enmod rewrite && \
|
||||
curl -o /usr/local/bin/phpunit -fL "https://phar.phpunit.de/phpunit-8.phar" && \
|
||||
chmod +x /usr/local/bin/phpunit && \
|
||||
ln -s html /var/www/src
|
||||
|
||||
|
||||
COPY php-mtt.ini /usr/local/etc/php/conf.d/
|
||||
COPY php-opcache.ini /usr/local/etc/php/conf.d/
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
services:
|
||||
web:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile-web
|
||||
image: mtt-dev/php:7.2-apache
|
||||
container_name: ${PLATFORM_NAME}-web
|
||||
ports:
|
||||
- "8080:80"
|
||||
environment:
|
||||
- MTT_ENABLE_DEBUG=YES
|
||||
- MTT_DB_TYPE=sqlite
|
||||
volumes:
|
||||
- ../../../src:/var/www/html
|
||||
- ../../../tests:/var/www/tests
|
||||
- ./php-mtt.ini:/usr/local/etc/php/conf.d/php-mtt.ini
|
||||
- ./php-opcache.ini:/usr/local/etc/php/conf.d/php-opcache.ini
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
|
||||
; Since PHP 5.4 E_STRICT is included in E_ALL
|
||||
error_reporting = E_ALL
|
||||
|
||||
log_errors = On
|
||||
display_errors = On
|
||||
display_startup_errors = On
|
||||
|
||||
session.gc_divisor = 100
|
||||
|
||||
allow_url_fopen=1
|
||||
|
|
@ -1,34 +0,0 @@
|
|||
;; opcache.ini
|
||||
|
||||
;; check /usr/local/etc/php/conf.d if exists docker-php-ext-opcache.ini
|
||||
|
||||
; To disable opcache just comment this line
|
||||
zend_extension=opcache.so
|
||||
|
||||
[opcache]
|
||||
opcache.enable=0
|
||||
opcache.enable_cli=0
|
||||
|
||||
; The size of the shared memory storage used by OPcache, in megabytes. The minimum permissible value is "8", which is enforced if a smaller value is set.
|
||||
; Default is 128.
|
||||
opcache.memory_consumption=128
|
||||
|
||||
; The maximum number of keys (and therefore scripts) in the OPcache hash table.
|
||||
; The actual value used will be the first number in the set of prime numbers
|
||||
; { 223, 463, 983, 1979, 3907, 7963, 16229, 32531, 65407, 130987, 262237, 524521, 1048793 }
|
||||
; that is greater than or equal to the configured value.
|
||||
; The minimum value is 200. The maximum value is 1000000. Values outside of this range are clamped to the permissible range.
|
||||
; Default is 10000.
|
||||
opcache.max_accelerated_files=1000
|
||||
|
||||
; How often to check script timestamps for updates, in seconds. 0 will result in OPcache checking for updates on every request.
|
||||
; This configuration directive is ignored if opcache.validate_timestamps is disabled.
|
||||
; Default is 2.
|
||||
opcache.revalidate_freq=2
|
||||
|
||||
; If enabled, OPcache will check for updated scripts every opcache.revalidate_freq seconds.
|
||||
; When this directive is disabled, you must reset OPcache manually via opcache_reset(), opcache_invalidate()
|
||||
; or by restarting the Web server for changes to the filesystem to take effect.
|
||||
; Default is 1.
|
||||
;; Override in docker-compose
|
||||
opcache.validate_timestamps=1
|
||||
|
|
@ -1 +0,0 @@
|
|||
PLATFORM_NAME=mtt-dev-php74-apache
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
FROM php:7.4-apache
|
||||
|
||||
RUN docker-php-ext-install mysqli && \
|
||||
mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini" && \
|
||||
mkdir /var/www/phpinfo && \
|
||||
echo "<?php\nphpinfo();" > /var/www/phpinfo/phpinfo.php && \
|
||||
echo 'Alias "/phpinfo" "/var/www/phpinfo/phpinfo.php"' > /etc/apache2/conf-enabled/phpinfo.conf && \
|
||||
echo 'LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\"" combined' > /etc/apache2/conf-enabled/logformat.conf && \
|
||||
a2enmod rewrite && \
|
||||
curl -o /usr/local/bin/phpunit -fL "https://phar.phpunit.de/phpunit-9.phar" && \
|
||||
chmod +x /usr/local/bin/phpunit && \
|
||||
ln -s html /var/www/src
|
||||
|
||||
#COPY php-mtt.ini /usr/local/etc/php/conf.d/
|
||||
#COPY php-opcache.ini /usr/local/etc/php/conf.d/
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
services:
|
||||
web:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile-web
|
||||
image: mtt-dev/php:7.4-apache
|
||||
container_name: ${PLATFORM_NAME}-web
|
||||
ports:
|
||||
- "8080:80"
|
||||
environment:
|
||||
- MTT_ENABLE_DEBUG=YES
|
||||
- MTT_DB_TYPE=sqlite
|
||||
volumes:
|
||||
- ../../../src:/var/www/html
|
||||
- ../../../tests:/var/www/tests
|
||||
- ./php-mtt.ini:/usr/local/etc/php/conf.d/php-mtt.ini
|
||||
- ./php-opcache.ini:/usr/local/etc/php/conf.d/php-opcache.ini
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
|
||||
; Since PHP 5.4 E_STRICT is included in E_ALL
|
||||
error_reporting = E_ALL
|
||||
|
||||
log_errors = On
|
||||
display_errors = On
|
||||
display_startup_errors = On
|
||||
|
||||
session.gc_divisor = 100
|
||||
|
|
@ -1,34 +0,0 @@
|
|||
;; opcache.ini
|
||||
|
||||
;; check /usr/local/etc/php/conf.d if exists docker-php-ext-opcache.ini
|
||||
|
||||
; To disable opcache just comment this line
|
||||
zend_extension=opcache.so
|
||||
|
||||
[opcache]
|
||||
opcache.enable=0
|
||||
opcache.enable_cli=0
|
||||
|
||||
; The size of the shared memory storage used by OPcache, in megabytes. The minimum permissible value is "8", which is enforced if a smaller value is set.
|
||||
; Default is 128.
|
||||
opcache.memory_consumption=128
|
||||
|
||||
; The maximum number of keys (and therefore scripts) in the OPcache hash table.
|
||||
; The actual value used will be the first number in the set of prime numbers
|
||||
; { 223, 463, 983, 1979, 3907, 7963, 16229, 32531, 65407, 130987, 262237, 524521, 1048793 }
|
||||
; that is greater than or equal to the configured value.
|
||||
; The minimum value is 200. The maximum value is 1000000. Values outside of this range are clamped to the permissible range.
|
||||
; Default is 10000.
|
||||
opcache.max_accelerated_files=1000
|
||||
|
||||
; How often to check script timestamps for updates, in seconds. 0 will result in OPcache checking for updates on every request.
|
||||
; This configuration directive is ignored if opcache.validate_timestamps is disabled.
|
||||
; Default is 2.
|
||||
opcache.revalidate_freq=2
|
||||
|
||||
; If enabled, OPcache will check for updated scripts every opcache.revalidate_freq seconds.
|
||||
; When this directive is disabled, you must reset OPcache manually via opcache_reset(), opcache_invalidate()
|
||||
; or by restarting the Web server for changes to the filesystem to take effect.
|
||||
; Default is 1.
|
||||
;; Override in docker-compose
|
||||
opcache.validate_timestamps=1
|
||||
|
|
@ -1 +0,0 @@
|
|||
PLATFORM_NAME=mtt-dev-php74-nginx
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
FROM php:7.4-fpm
|
||||
|
||||
RUN docker-php-ext-install mysqli && \
|
||||
mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini" && \
|
||||
mkdir /var/www/phpinfo && \
|
||||
echo "<?php\nphpinfo();" > /var/www/phpinfo/phpinfo.php
|
||||
|
||||
#COPY php-mtt.ini /usr/local/etc/php/conf.d/
|
||||
#COPY php-opcache.ini /usr/local/etc/php/conf.d/
|
||||
|
||||
VOLUME /var/www/html
|
||||
|
|
@ -1,37 +0,0 @@
|
|||
version: "3.9"
|
||||
|
||||
networks:
|
||||
network:
|
||||
name: "${PLATFORM_NAME}-network"
|
||||
|
||||
services:
|
||||
web:
|
||||
build:
|
||||
context: ../_nginx
|
||||
dockerfile: Dockerfile-nginx
|
||||
image: mtt-dev/nginx
|
||||
container_name: ${PLATFORM_NAME}-web
|
||||
ports:
|
||||
- "8080:80"
|
||||
volumes:
|
||||
- ../../../src:/var/www/html
|
||||
depends_on:
|
||||
- fpm
|
||||
networks:
|
||||
- network
|
||||
|
||||
fpm:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile-fpm
|
||||
image: mtt-dev/php:7.4-fpm
|
||||
container_name: ${PLATFORM_NAME}-fpm
|
||||
environment:
|
||||
- MTT_ENABLE_DEBUG=YES
|
||||
- MTT_DB_TYPE=sqlite
|
||||
volumes:
|
||||
- ../../../src:/var/www/html
|
||||
- ./php-mtt.ini:/usr/local/etc/php/conf.d/php-mtt.ini
|
||||
- ./php-opcache.ini:/usr/local/etc/php/conf.d/php-opcache.ini
|
||||
networks:
|
||||
- network
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
|
||||
; Since PHP 5.4 E_STRICT is included in E_ALL
|
||||
error_reporting = E_ALL
|
||||
|
||||
log_errors = On
|
||||
display_errors = On
|
||||
display_startup_errors = On
|
||||
|
||||
session.gc_divisor = 100
|
||||
cgi.fix_pathinfo=0
|
||||
|
|
@ -1,42 +0,0 @@
|
|||
;; opcache.ini
|
||||
|
||||
;; check /usr/local/etc/php/conf.d if exists docker-php-ext-opcache.ini
|
||||
|
||||
; To disable opcache just comment this line
|
||||
zend_extension=opcache.so
|
||||
|
||||
[opcache]
|
||||
opcache.enable=1
|
||||
opcache.enable_cli=1
|
||||
|
||||
; JIT will work only if opcache is enabled and jit_buffer_size is not zero.
|
||||
; To disable JIT set the buffer size to 0.
|
||||
opcache.jit_buffer_size=64M
|
||||
|
||||
; JIT mode. Read more at https://www.php.net/manual/en/opcache.configuration.php#ini.opcache.jit
|
||||
; Default is tracing.
|
||||
opcache.jit=tracing
|
||||
|
||||
; The size of the shared memory storage used by OPcache, in megabytes. The minimum permissible value is "8", which is enforced if a smaller value is set.
|
||||
; Default is 128.
|
||||
opcache.memory_consumption=128
|
||||
|
||||
; The maximum number of keys (and therefore scripts) in the OPcache hash table.
|
||||
; The actual value used will be the first number in the set of prime numbers
|
||||
; { 223, 463, 983, 1979, 3907, 7963, 16229, 32531, 65407, 130987, 262237, 524521, 1048793 }
|
||||
; that is greater than or equal to the configured value.
|
||||
; The minimum value is 200. The maximum value is 1000000. Values outside of this range are clamped to the permissible range.
|
||||
; Default is 10000.
|
||||
opcache.max_accelerated_files=1000
|
||||
|
||||
; How often to check script timestamps for updates, in seconds. 0 will result in OPcache checking for updates on every request.
|
||||
; This configuration directive is ignored if opcache.validate_timestamps is disabled.
|
||||
; Default is 2.
|
||||
opcache.revalidate_freq=2
|
||||
|
||||
; If enabled, OPcache will check for updated scripts every opcache.revalidate_freq seconds.
|
||||
; When this directive is disabled, you must reset OPcache manually via opcache_reset(), opcache_invalidate()
|
||||
; or by restarting the Web server for changes to the filesystem to take effect.
|
||||
; Default is 1.
|
||||
;; Override in docker-compose
|
||||
opcache.validate_timestamps=1
|
||||
|
|
@ -1 +0,0 @@
|
|||
PLATFORM_NAME=mtt-dev-php80-apache-mariadb105
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
version: "3.9"
|
||||
|
||||
networks:
|
||||
network:
|
||||
name: "${PLATFORM_NAME}-network"
|
||||
|
||||
services:
|
||||
web:
|
||||
build:
|
||||
context: ../mtt-php80-apache/
|
||||
dockerfile: Dockerfile-web
|
||||
image: mtt-dev/php:8.0-apache
|
||||
container_name: ${PLATFORM_NAME}-web
|
||||
ports:
|
||||
- "8080:80"
|
||||
environment:
|
||||
- MTT_ENABLE_DEBUG=YES
|
||||
- MTT_DB_TYPE=mysql
|
||||
- MTT_DB_HOST=db
|
||||
- MTT_DB_NAME=mytinytodo
|
||||
- MTT_DB_USER=mtt
|
||||
- MTT_DB_PASSWORD=mtt
|
||||
- MTT_DB_PREFIX=mtt_
|
||||
- MTT_DB_DRIVER=mysqli
|
||||
volumes:
|
||||
- ../../../src:/var/www/html
|
||||
depends_on:
|
||||
- db
|
||||
networks:
|
||||
- network
|
||||
|
||||
db:
|
||||
image: mariadb:10.5
|
||||
container_name: ${PLATFORM_NAME}-db
|
||||
#restart: always
|
||||
environment:
|
||||
MARIADB_ROOT_PASSWORD: JustForDev
|
||||
MARIADB_USER: mtt
|
||||
MARIADB_PASSWORD: mtt
|
||||
MARIADB_DATABASE: mytinytodo
|
||||
volumes:
|
||||
- ../_mariadb105/my.cnf:/etc/mysql/conf.d/my.cnf
|
||||
- ../_mariadb105/db_data:/var/lib/mysql
|
||||
networks:
|
||||
- network
|
||||
|
|
@ -1 +0,0 @@
|
|||
PLATFORM_NAME=mtt-dev-php80-apache
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
FROM php:8.0-apache
|
||||
|
||||
RUN docker-php-ext-install mysqli && \
|
||||
mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini" && \
|
||||
mkdir /var/www/phpinfo && \
|
||||
echo "<?php\nphpinfo();" > /var/www/phpinfo/phpinfo.php && \
|
||||
echo 'Alias "/phpinfo" "/var/www/phpinfo/phpinfo.php"' > /etc/apache2/conf-enabled/phpinfo.conf && \
|
||||
echo 'LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\"" combined' > /etc/apache2/conf-enabled/logformat.conf && \
|
||||
a2enmod rewrite && \
|
||||
curl -o /usr/local/bin/phpunit -fL "https://phar.phpunit.de/phpunit-9.phar" && \
|
||||
chmod +x /usr/local/bin/phpunit && \
|
||||
ln -s html /var/www/src
|
||||
|
||||
COPY php-mtt.ini /usr/local/etc/php/conf.d/
|
||||
COPY php-opcache.ini /usr/local/etc/php/conf.d/
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
version: "3.9"
|
||||
|
||||
services:
|
||||
web:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile-web
|
||||
image: mtt-dev/php:8.0-apache
|
||||
container_name: ${PLATFORM_NAME}-web
|
||||
ports:
|
||||
- "8080:80"
|
||||
environment:
|
||||
- MTT_ENABLE_DEBUG=YES
|
||||
- MTT_DB_TYPE=sqlite
|
||||
volumes:
|
||||
- ../../../src:/var/www/html
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
|
||||
; Since PHP 5.4 E_STRICT is included in E_ALL
|
||||
error_reporting = E_ALL
|
||||
|
||||
log_errors = On
|
||||
display_errors = On
|
||||
display_startup_errors = On
|
||||
|
||||
session.gc_divisor = 100
|
||||
|
|
@ -1,42 +0,0 @@
|
|||
;; opcache.ini
|
||||
|
||||
;; check /usr/local/etc/php/conf.d if exists docker-php-ext-opcache.ini
|
||||
|
||||
; To disable opcache just comment this line
|
||||
zend_extension=opcache.so
|
||||
|
||||
[opcache]
|
||||
opcache.enable=0
|
||||
opcache.enable_cli=0
|
||||
|
||||
; JIT will work only if opcache is enabled and jit_buffer_size is not zero.
|
||||
; To disable JIT set the buffer size to 0.
|
||||
opcache.jit_buffer_size=64M
|
||||
|
||||
; JIT mode. Read more at https://www.php.net/manual/en/opcache.configuration.php#ini.opcache.jit
|
||||
; Default is tracing.
|
||||
opcache.jit=tracing
|
||||
|
||||
; The size of the shared memory storage used by OPcache, in megabytes. The minimum permissible value is "8", which is enforced if a smaller value is set.
|
||||
; Default is 128.
|
||||
opcache.memory_consumption=128
|
||||
|
||||
; The maximum number of keys (and therefore scripts) in the OPcache hash table.
|
||||
; The actual value used will be the first number in the set of prime numbers
|
||||
; { 223, 463, 983, 1979, 3907, 7963, 16229, 32531, 65407, 130987, 262237, 524521, 1048793 }
|
||||
; that is greater than or equal to the configured value.
|
||||
; The minimum value is 200. The maximum value is 1000000. Values outside of this range are clamped to the permissible range.
|
||||
; Default is 10000.
|
||||
opcache.max_accelerated_files=1000
|
||||
|
||||
; How often to check script timestamps for updates, in seconds. 0 will result in OPcache checking for updates on every request.
|
||||
; This configuration directive is ignored if opcache.validate_timestamps is disabled.
|
||||
; Default is 2.
|
||||
opcache.revalidate_freq=2
|
||||
|
||||
; If enabled, OPcache will check for updated scripts every opcache.revalidate_freq seconds.
|
||||
; When this directive is disabled, you must reset OPcache manually via opcache_reset(), opcache_invalidate()
|
||||
; or by restarting the Web server for changes to the filesystem to take effect.
|
||||
; Default is 1.
|
||||
;; Override in docker-compose
|
||||
opcache.validate_timestamps=1
|
||||
|
|
@ -1 +0,0 @@
|
|||
PLATFORM_NAME=mtt-dev-php81-apache-mariadb108
|
||||
|
|
@ -1,56 +0,0 @@
|
|||
version: "3.9"
|
||||
|
||||
networks:
|
||||
network:
|
||||
name: "${PLATFORM_NAME}-network"
|
||||
|
||||
services:
|
||||
web:
|
||||
build:
|
||||
context: ../mtt-php81-apache/
|
||||
dockerfile: Dockerfile-web
|
||||
image: mtt-dev/php:8.1-apache
|
||||
container_name: ${PLATFORM_NAME}-web
|
||||
ports:
|
||||
- "8080:80"
|
||||
environment:
|
||||
- MTT_ENABLE_DEBUG=YES
|
||||
- MTT_DB_TYPE=mysql
|
||||
- MTT_DB_HOST=db
|
||||
- MTT_DB_NAME=mytinytodo
|
||||
- MTT_DB_USER=mtt
|
||||
- MTT_DB_PASSWORD=mtt
|
||||
- MTT_DB_PREFIX=mtt_
|
||||
- MTT_DB_DRIVER=mysqli
|
||||
volumes:
|
||||
- ../../../src:/var/www/html
|
||||
- ../../../tests:/var/www/tests
|
||||
depends_on:
|
||||
- db
|
||||
networks:
|
||||
- network
|
||||
|
||||
db:
|
||||
image: mariadb:10.8
|
||||
container_name: ${PLATFORM_NAME}-db
|
||||
#restart: always
|
||||
environment:
|
||||
MARIADB_ROOT_PASSWORD: JustForDev
|
||||
MARIADB_USER: mtt
|
||||
MARIADB_PASSWORD: mtt
|
||||
MARIADB_DATABASE: mytinytodo
|
||||
volumes:
|
||||
- ../_mariadb108/my.cnf:/etc/mysql/conf.d/my.cnf
|
||||
- ../_mariadb108/db_data:/var/lib/mysql
|
||||
networks:
|
||||
- network
|
||||
|
||||
adminer:
|
||||
image: adminer:latest
|
||||
container_name: ${PLATFORM_NAME}-adminer
|
||||
environment:
|
||||
ADMINER_DEFAULT_SERVER: db
|
||||
ports:
|
||||
- 8079:8080
|
||||
networks:
|
||||
- network
|
||||
|
|
@ -1 +0,0 @@
|
|||
PLATFORM_NAME=mtt-dev-php81-apache
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
FROM php:8.1-apache
|
||||
|
||||
RUN docker-php-ext-install mysqli && \
|
||||
mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini" && \
|
||||
mkdir /var/www/phpinfo && \
|
||||
echo "<?php\nphpinfo();" > /var/www/phpinfo/phpinfo.php && \
|
||||
echo 'Alias "/phpinfo" "/var/www/phpinfo/phpinfo.php"' > /etc/apache2/conf-enabled/phpinfo.conf && \
|
||||
a2enmod rewrite && \
|
||||
echo 'LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\"" combined' > /etc/apache2/conf-enabled/logformat.conf && \
|
||||
curl -o /usr/local/bin/phpunit -fL "https://phar.phpunit.de/phpunit-9.phar" && \
|
||||
chmod +x /usr/local/bin/phpunit && \
|
||||
ln -s html /var/www/src
|
||||
|
||||
|
||||
COPY php-mtt.ini /usr/local/etc/php/conf.d/
|
||||
COPY php-opcache.ini /usr/local/etc/php/conf.d/
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
version: "3.9"
|
||||
|
||||
services:
|
||||
web:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile-web
|
||||
image: mtt-dev/php:8.1-apache
|
||||
container_name: ${PLATFORM_NAME}-web
|
||||
ports:
|
||||
- "8080:80"
|
||||
environment:
|
||||
- MTT_ENABLE_DEBUG=YES
|
||||
- MTT_DB_TYPE=sqlite
|
||||
volumes:
|
||||
- ../../../src:/var/www/html
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
|
||||
; Since PHP 5.4 E_STRICT is included in E_ALL
|
||||
error_reporting = E_ALL
|
||||
|
||||
log_errors = On
|
||||
display_errors = On
|
||||
display_startup_errors = On
|
||||
|
||||
session.gc_divisor = 100
|
||||
|
|
@ -1,42 +0,0 @@
|
|||
;; opcache.ini
|
||||
|
||||
;; check /usr/local/etc/php/conf.d if exists docker-php-ext-opcache.ini
|
||||
|
||||
; To disable opcache just comment this line
|
||||
zend_extension=opcache.so
|
||||
|
||||
[opcache]
|
||||
opcache.enable=0
|
||||
opcache.enable_cli=0
|
||||
|
||||
; JIT will work only if opcache is enabled and jit_buffer_size is not zero.
|
||||
; To disable JIT set the buffer size to 0.
|
||||
opcache.jit_buffer_size=64M
|
||||
|
||||
; JIT mode. Read more at https://www.php.net/manual/en/opcache.configuration.php#ini.opcache.jit
|
||||
; Default is tracing.
|
||||
opcache.jit=tracing
|
||||
|
||||
; The size of the shared memory storage used by OPcache, in megabytes. The minimum permissible value is "8", which is enforced if a smaller value is set.
|
||||
; Default is 128.
|
||||
opcache.memory_consumption=128
|
||||
|
||||
; The maximum number of keys (and therefore scripts) in the OPcache hash table.
|
||||
; The actual value used will be the first number in the set of prime numbers
|
||||
; { 223, 463, 983, 1979, 3907, 7963, 16229, 32531, 65407, 130987, 262237, 524521, 1048793 }
|
||||
; that is greater than or equal to the configured value.
|
||||
; The minimum value is 200. The maximum value is 1000000. Values outside of this range are clamped to the permissible range.
|
||||
; Default is 10000.
|
||||
opcache.max_accelerated_files=1000
|
||||
|
||||
; How often to check script timestamps for updates, in seconds. 0 will result in OPcache checking for updates on every request.
|
||||
; This configuration directive is ignored if opcache.validate_timestamps is disabled.
|
||||
; Default is 2.
|
||||
opcache.revalidate_freq=2
|
||||
|
||||
; If enabled, OPcache will check for updated scripts every opcache.revalidate_freq seconds.
|
||||
; When this directive is disabled, you must reset OPcache manually via opcache_reset(), opcache_invalidate()
|
||||
; or by restarting the Web server for changes to the filesystem to take effect.
|
||||
; Default is 1.
|
||||
;; Override in docker-compose
|
||||
opcache.validate_timestamps=1
|
||||