Skip to content

Commit

Permalink
Merge pull request #28 from CodeLieutenant/feat/devcontainer
Browse files Browse the repository at this point in the history
Feat/devcontainer
  • Loading branch information
CodeLieutenant authored Apr 1, 2024
2 parents a14ae7c + e42908c commit 52506a1
Show file tree
Hide file tree
Showing 3 changed files with 234 additions and 0 deletions.
7 changes: 7 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
FROM mcr.microsoft.com/devcontainers/php:1-8.1-bookworm

ENV TZ=UTC

COPY ./.devcontainer/php.ini /usr/local/etc/php/conf.d/99-php.ini

RUN ln -snf "/usr/share/zoneinfo/$TZ" /etc/localtime && echo "$TZ" > /etc/timezone
178 changes: 178 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,178 @@
{
"name": "LaravelCrypto",
"dockerFile": "./Dockerfile",
"context": "../",
"features": {
"ghcr.io/devcontainers/features/common-utils:2": {
"installZsh": true,
"configureZshAsDefaultShell": true,
"nonFreePackages": true
},
"ghcr.io/devcontainers-contrib/features/composer:1": {},
"ghcr.io/devcontainers-contrib/features/act:1": {},
"ghcr.io/devcontainers-contrib/features/protoc-asdf:1": {},
"ghcr.io/devcontainers-contrib/features/curl-apt-get:1": {},
"ghcr.io/devcontainers-contrib/features/exa:1": {},
"ghcr.io/devcontainers-contrib/features/fd:1": {},
"ghcr.io/devcontainers-contrib/features/fzf:1": {},
"ghcr.io/devcontainers-contrib/features/ripgrep:1": {},
"ghcr.io/christophermacgown/devcontainer-features/direnv:1": {},
"ghcr.io/rocker-org/devcontainer-features/apt-packages:1": {
"packages": [
"ca-certificates",
"procps",
"dnsutils",
"gnupg",
"build-essential",
"unzip",
"zip"
],
"upgradePackages": true
}
},
"customizations": {
"vscode": {
"extensions": [
"xdebug.php-debug",
"bmewburn.vscode-intelephense-client",
"mikestead.dotenv",
"usernamehw.errorlens",
"m1guelpf.better-pest",
"calebporzio.better-phpunit",
"DEVSENSE.composer-php-vscode",
"muath-ye.composer-Intelephense",
"ms-azuretools.vscode-docker",
"p1c2u.docker-compose",
"github.vscode-github-actions",
"eamodio.gitlens",
"ryannaddy.laravel-artisan",
"amiralizadeh9480.laravel-extra-intellisense",
"georgykurian.laravel-ide-helper",
"porifa.laravel-intelephense",
"mohamedbenhida.laravel-intellisense",
"open-southeners.laravel-pint",
"christian-kohler.path-intellisense",
"ctf0.php-array-symbols",
"MehediDracula.php-constructor",
"neilbrayfield.php-docblocker",
"marabesi.php-import-checker",
"MehediDracula.php-namespace-resolver",
"MrChetan.phpstorm-parameter-hints-in-vscode",
"recca0120.vscode-phpunit",
"santigarcor.phpunit-extended",
"emallin.phpunit",
"hbenl.vscode-test-explorer"
],
"settings": {
"php.suggest.basic": false,
"php.validate.enable": true,
"php.validate.run": "onType",
"intelephense.stubs": [
"apache",
"redis",
"uv",
"bcmath",
"bz2",
"calendar",
"Core",
"ctype",
"curl",
"date",
"dom",
"enchant",
"exif",
"fileinfo",
"filter",
"gd",
"cassandra",
"FFI",
"geoip",
"event",
"amqp",
"apcu",
"gettext",
"igbinary",
"imagick",
"libsodium",
"memcached",
"mongodb",
"parallel",
"sodium",
"yaml",
"hash",
"iconv",
"intl",
"json",
"mbstring",
"meta",
"mssql",
"mysqli",
"openssl",
"pcntl",
"pcre",
"PDO",
"ds",
"pdo_mysql",
"pdo_pgsql",
"pdo_sqlite",
"pgsql",
"Phar",
"posix",
"pspell",
"readline",
"recode",
"Reflection",
"regex",
"session",
"SimpleXML",
"sockets",
"sodium",
"SPL",
"sqlite3",
"standard",
"superglobals",
"tidy",
"uv",
"tokenizer",
"wddx",
"swoole",
"Zend OPcache",
"zip",
"zlib"
],
"intelephense.telemetry.enabled": true,
"intelephense.format.enable": true,
"intelephense.diagnostics.embeddedLanguages": true,
"intelephense.diagnostics.languageConstraints": true,
"intelephense.diagnostics.typeErrors": true,
"intelephense.compatibility.correctForArrayAccessArrayAndTraversableArrayUnionTypes": true,
"intelephense.compatibility.correctForBaseClassStaticUnionTypes": true,
"intelephense.diagnostics.implementationErrors": true,
"intelephense.diagnostics.undefinedClassConstants": true,
"intelephense.diagnostics.unusedSymbols": false,
"intelephense.completion.insertUseDeclaration": true,
"intelephense.completion.fullyQualifyGlobalConstantsAndFunctions": true,
"intelephense.trace.server": "off",
"intelephense.files.exclude": [
"**/.git/**",
"**/.svn/**",
"**/.hg/**",
"**/CVS/**",
"**/.DS_Store/**",
"**/node_modules/**",
"**/bower_components/**",
"**/storage",
"**/storage/**"
]
}
},
"jetbrains": {
"backend": "PhpStorm",
"settings": {
"DockerSettings.useComposeV2": true
}
}
},
"postCreateCommand": "sudo mkdir -p /var/log/xdebug && sudo chmod -R 777 /var/log/xdebug",
"postStartCommand": "composer install --prefer-dist --no-interaction"
}
49 changes: 49 additions & 0 deletions .devcontainer/php.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
[PHP]
expose_php = On
error_reporting = E_ALL
display_errors = On
report_memleaks = On
html_errors = On
auto_globals_jit = Off
max_input_time = 60
max_execution_time = -1
post_max_size = 100M
upload_max_filesize = 100M
variables_order = EGPCS
output_buffering = 4096
register_argc_argv = On
request_order = GP
short_open_tag = Off
precision = 14
max_input_nesting_level = 32
implicit_flush = Off
serialize_precision = 14
ignore_user_abort = On
realpath_cache_size = 4096k
zend.enable_gc = On
zend.exception_ignore_args = On
log_errors = On
ignore_repeated_errors = Off
default_mimetype = "text/html"
default_charset = "UTF-8"
enable_dl = Off
file_uploads = On
max_file_uploads = 20
allow_url_fopen = On
allow_url_include = 0
default_socket_timeout = 60
user_agent = ""

[opcache]
opcache.jit = disable

[Assertion]
zend.assertions = 1
assert.exception = On
assert.warning = On

[xdebug]
xdebug.discover_client_host = 1
xdebug.log = /var/log/xdebug/xdebug.log
xdebug.dump_globals = 1
xdebug.dump_once = 1

0 comments on commit 52506a1

Please sign in to comment.