diff --git a/.env.example b/.env.example index 4499f8a..bbe856a 100644 --- a/.env.example +++ b/.env.example @@ -1,68 +1,8 @@ -APP_NAME=Laravel -APP_ENV=local -APP_KEY= -APP_DEBUG=true -APP_URL=http://localhost - -APP_FORCE_HTTPS=false - -APP_DEMO_MODE=false -APP_DEMO_EMAIL= -APP_DEMO_PASSWORD= - -APP_DEFAULT_USER_TIMEZONE=UTC -# Valid languages: ru | en -APP_DEFAULT_LOCALE=ru - -LOG_CHANNEL=daily -LOG_DEPRECATIONS_CHANNEL=deprecations -LOG_LEVEL=debug - -DB_CONNECTION=mysql -DB_HOST=127.0.0.1 -DB_PORT=3306 -DB_DATABASE=laravel -DB_USERNAME=root -DB_PASSWORD= - -BROADCAST_DRIVER=log -CACHE_DRIVER=file -FILESYSTEM_DISK=local -QUEUE_CONNECTION=sync -SESSION_DRIVER=file -SESSION_LIFETIME=120 - -MEMCACHED_HOST=127.0.0.1 - -REDIS_HOST=127.0.0.1 -REDIS_PASSWORD=null -REDIS_PORT=6379 - -MAIL_MAILER=smtp -MAIL_HOST=mailpit -MAIL_PORT=1025 -MAIL_USERNAME=null -MAIL_PASSWORD=null -MAIL_ENCRYPTION=null -MAIL_FROM_ADDRESS="hello@example.com" -MAIL_FROM_NAME="${APP_NAME}" - -AWS_ACCESS_KEY_ID= -AWS_SECRET_ACCESS_KEY= -AWS_DEFAULT_REGION=us-east-1 -AWS_BUCKET= -AWS_USE_PATH_STYLE_ENDPOINT=false - -PUSHER_APP_ID= -PUSHER_APP_KEY= -PUSHER_APP_SECRET= -PUSHER_HOST= -PUSHER_PORT=443 -PUSHER_SCHEME=https -PUSHER_APP_CLUSTER=mt1 - -VITE_PUSHER_APP_KEY="${PUSHER_APP_KEY}" -VITE_PUSHER_HOST="${PUSHER_HOST}" -VITE_PUSHER_PORT="${PUSHER_PORT}" -VITE_PUSHER_SCHEME="${PUSHER_SCHEME}" -VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" +DOCKER_NGINX_PORT=8080 +DOCKER_DB_PORT=3306 +MYSQL_ROOT_PASSWORD=root_pass +DB_DATABASE=captcha +DB_USERNAME=captcha +DB_PASSWORD=captcha_pass +UID=1000 +GID=1000 \ No newline at end of file diff --git a/.gitignore b/.gitignore index 7fe978f..48a9e44 100644 --- a/.gitignore +++ b/.gitignore @@ -1,19 +1,6 @@ -/.phpunit.cache -/node_modules -/public/build -/public/hot -/public/storage -/storage/*.key -/vendor .env -.env.backup -.env.production -.phpunit.result.cache -Homestead.json Homestead.yaml -auth.json -npm-debug.log -yarn-error.log -/.fleet -/.idea -/.vscode +Homestead.json +/.vagrant +.phpunit.result.cache + diff --git a/.editorconfig b/app/application/.editorconfig similarity index 100% rename from .editorconfig rename to app/application/.editorconfig diff --git a/app/application/.env.example b/app/application/.env.example new file mode 100644 index 0000000..e77cefd --- /dev/null +++ b/app/application/.env.example @@ -0,0 +1,68 @@ +APP_NAME=Laravel +APP_ENV=local +APP_KEY= +APP_DEBUG=true +APP_URL=http://localhost + +APP_FORCE_HTTPS=false + +APP_DEMO_MODE=false +APP_DEMO_EMAIL= +APP_DEMO_PASSWORD= + +APP_DEFAULT_USER_TIMEZONE=UTC +# Valid languages: ru | en +APP_DEFAULT_LOCALE=ru + +LOG_CHANNEL=daily +LOG_DEPRECATIONS_CHANNEL=deprecations +LOG_LEVEL=debug + +DB_CONNECTION=mysql +DB_HOST=db +DB_PORT=3306 +DB_DATABASE=captcha +DB_USERNAME=captcha +DB_PASSWORD=captcha_pass + +BROADCAST_DRIVER=log +CACHE_DRIVER=redis +FILESYSTEM_DISK=local +QUEUE_CONNECTION=redis +SESSION_DRIVER=redis +SESSION_LIFETIME=120 + +MEMCACHED_HOST=127.0.0.1 + +REDIS_HOST=redis +REDIS_PASSWORD=null +REDIS_PORT=6379 + +MAIL_MAILER=smtp +MAIL_HOST=mailpit +MAIL_PORT=1025 +MAIL_USERNAME=null +MAIL_PASSWORD=null +MAIL_ENCRYPTION=null +MAIL_FROM_ADDRESS="hello@example.com" +MAIL_FROM_NAME="${APP_NAME}" + +AWS_ACCESS_KEY_ID= +AWS_SECRET_ACCESS_KEY= +AWS_DEFAULT_REGION=us-east-1 +AWS_BUCKET= +AWS_USE_PATH_STYLE_ENDPOINT=false + +PUSHER_APP_ID= +PUSHER_APP_KEY= +PUSHER_APP_SECRET= +PUSHER_HOST= +PUSHER_PORT=443 +PUSHER_SCHEME=https +PUSHER_APP_CLUSTER=mt1 + +VITE_PUSHER_APP_KEY="${PUSHER_APP_KEY}" +VITE_PUSHER_HOST="${PUSHER_HOST}" +VITE_PUSHER_PORT="${PUSHER_PORT}" +VITE_PUSHER_SCHEME="${PUSHER_SCHEME}" +VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" diff --git a/.gitattributes b/app/application/.gitattributes similarity index 100% rename from .gitattributes rename to app/application/.gitattributes diff --git a/app/application/.gitignore b/app/application/.gitignore new file mode 100644 index 0000000..7fe978f --- /dev/null +++ b/app/application/.gitignore @@ -0,0 +1,19 @@ +/.phpunit.cache +/node_modules +/public/build +/public/hot +/public/storage +/storage/*.key +/vendor +.env +.env.backup +.env.production +.phpunit.result.cache +Homestead.json +Homestead.yaml +auth.json +npm-debug.log +yarn-error.log +/.fleet +/.idea +/.vscode diff --git a/LICENSE.md b/app/application/LICENSE.md similarity index 95% rename from LICENSE.md rename to app/application/LICENSE.md index 3f3a98e..7b16ba5 100644 --- a/LICENSE.md +++ b/app/application/LICENSE.md @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2023 Leonid Nikitin (kor-elf) +Copyright (c) 2023 - 2024 Leonid Nikitin (kor-elf) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: diff --git a/app/Captcha/Config/ImageBody.php b/app/application/app/Captcha/Config/ImageBody.php similarity index 100% rename from app/Captcha/Config/ImageBody.php rename to app/application/app/Captcha/Config/ImageBody.php diff --git a/app/Captcha/Config/ImageHead.php b/app/application/app/Captcha/Config/ImageHead.php similarity index 100% rename from app/Captcha/Config/ImageHead.php rename to app/application/app/Captcha/Config/ImageHead.php diff --git a/app/Captcha/Contracts/Image.php b/app/application/app/Captcha/Contracts/Image.php similarity index 100% rename from app/Captcha/Contracts/Image.php rename to app/application/app/Captcha/Contracts/Image.php diff --git a/app/Captcha/Contracts/ImageBody.php b/app/application/app/Captcha/Contracts/ImageBody.php similarity index 100% rename from app/Captcha/Contracts/ImageBody.php rename to app/application/app/Captcha/Contracts/ImageBody.php diff --git a/app/Captcha/Contracts/ImageHead.php b/app/application/app/Captcha/Contracts/ImageHead.php similarity index 100% rename from app/Captcha/Contracts/ImageHead.php rename to app/application/app/Captcha/Contracts/ImageHead.php diff --git a/app/Captcha/Contracts/ImageLines.php b/app/application/app/Captcha/Contracts/ImageLines.php similarity index 100% rename from app/Captcha/Contracts/ImageLines.php rename to app/application/app/Captcha/Contracts/ImageLines.php diff --git a/app/Captcha/Contracts/ImageManager.php b/app/application/app/Captcha/Contracts/ImageManager.php similarity index 100% rename from app/Captcha/Contracts/ImageManager.php rename to app/application/app/Captcha/Contracts/ImageManager.php diff --git a/app/Captcha/Contracts/Type.php b/app/application/app/Captcha/Contracts/Type.php similarity index 100% rename from app/Captcha/Contracts/Type.php rename to app/application/app/Captcha/Contracts/Type.php diff --git a/app/Captcha/Dto/Coordinators.php b/app/application/app/Captcha/Dto/Coordinators.php similarity index 100% rename from app/Captcha/Dto/Coordinators.php rename to app/application/app/Captcha/Dto/Coordinators.php diff --git a/app/Captcha/Dto/Image.php b/app/application/app/Captcha/Dto/Image.php similarity index 100% rename from app/Captcha/Dto/Image.php rename to app/application/app/Captcha/Dto/Image.php diff --git a/app/Captcha/Dto/ImageBody.php b/app/application/app/Captcha/Dto/ImageBody.php similarity index 100% rename from app/Captcha/Dto/ImageBody.php rename to app/application/app/Captcha/Dto/ImageBody.php diff --git a/app/Captcha/Dto/ImageHead.php b/app/application/app/Captcha/Dto/ImageHead.php similarity index 100% rename from app/Captcha/Dto/ImageHead.php rename to app/application/app/Captcha/Dto/ImageHead.php diff --git a/app/Captcha/Dto/Sector.php b/app/application/app/Captcha/Dto/Sector.php similarity index 100% rename from app/Captcha/Dto/Sector.php rename to app/application/app/Captcha/Dto/Sector.php diff --git a/app/Captcha/Dto/Sectors.php b/app/application/app/Captcha/Dto/Sectors.php similarity index 100% rename from app/Captcha/Dto/Sectors.php rename to app/application/app/Captcha/Dto/Sectors.php diff --git a/app/Captcha/Dto/Symbols.php b/app/application/app/Captcha/Dto/Symbols.php similarity index 100% rename from app/Captcha/Dto/Symbols.php rename to app/application/app/Captcha/Dto/Symbols.php diff --git a/app/Captcha/Enums/SymbolType.php b/app/application/app/Captcha/Enums/SymbolType.php similarity index 100% rename from app/Captcha/Enums/SymbolType.php rename to app/application/app/Captcha/Enums/SymbolType.php diff --git a/app/Captcha/Exceptions/CaptchaException.php b/app/application/app/Captcha/Exceptions/CaptchaException.php similarity index 100% rename from app/Captcha/Exceptions/CaptchaException.php rename to app/application/app/Captcha/Exceptions/CaptchaException.php diff --git a/app/Captcha/Images/Body.php b/app/application/app/Captcha/Images/Body.php similarity index 100% rename from app/Captcha/Images/Body.php rename to app/application/app/Captcha/Images/Body.php diff --git a/app/Captcha/Images/Head.php b/app/application/app/Captcha/Images/Head.php similarity index 100% rename from app/Captcha/Images/Head.php rename to app/application/app/Captcha/Images/Head.php diff --git a/app/Captcha/Images/Image.php b/app/application/app/Captcha/Images/Image.php similarity index 100% rename from app/Captcha/Images/Image.php rename to app/application/app/Captcha/Images/Image.php diff --git a/app/Captcha/Images/ImageManager.php b/app/application/app/Captcha/Images/ImageManager.php similarity index 100% rename from app/Captcha/Images/ImageManager.php rename to app/application/app/Captcha/Images/ImageManager.php diff --git a/app/Captcha/Images/Lines.php b/app/application/app/Captcha/Images/Lines.php similarity index 100% rename from app/Captcha/Images/Lines.php rename to app/application/app/Captcha/Images/Lines.php diff --git a/app/Captcha/Type.php b/app/application/app/Captcha/Type.php similarity index 100% rename from app/Captcha/Type.php rename to app/application/app/Captcha/Type.php diff --git a/app/Captcha/Types/StringType.php b/app/application/app/Captcha/Types/StringType.php similarity index 100% rename from app/Captcha/Types/StringType.php rename to app/application/app/Captcha/Types/StringType.php diff --git a/app/Console/Commands/CreateUserAdmin.php b/app/application/app/Console/Commands/CreateUserAdmin.php similarity index 100% rename from app/Console/Commands/CreateUserAdmin.php rename to app/application/app/Console/Commands/CreateUserAdmin.php diff --git a/app/Console/Kernel.php b/app/application/app/Console/Kernel.php similarity index 100% rename from app/Console/Kernel.php rename to app/application/app/Console/Kernel.php diff --git a/app/Contracts/CryptographyContract.php b/app/application/app/Contracts/CryptographyContract.php similarity index 100% rename from app/Contracts/CryptographyContract.php rename to app/application/app/Contracts/CryptographyContract.php diff --git a/app/Contracts/FormRequestDto.php b/app/application/app/Contracts/FormRequestDto.php similarity index 100% rename from app/Contracts/FormRequestDto.php rename to app/application/app/Contracts/FormRequestDto.php diff --git a/app/Contracts/GenerateTokenCommand.php b/app/application/app/Contracts/GenerateTokenCommand.php similarity index 100% rename from app/Contracts/GenerateTokenCommand.php rename to app/application/app/Contracts/GenerateTokenCommand.php diff --git a/app/Contracts/Search.php b/app/application/app/Contracts/Search.php similarity index 100% rename from app/Contracts/Search.php rename to app/application/app/Contracts/Search.php diff --git a/app/Contracts/ServiceResult.php b/app/application/app/Contracts/ServiceResult.php similarity index 100% rename from app/Contracts/ServiceResult.php rename to app/application/app/Contracts/ServiceResult.php diff --git a/app/Contracts/ServiceResultError.php b/app/application/app/Contracts/ServiceResultError.php similarity index 100% rename from app/Contracts/ServiceResultError.php rename to app/application/app/Contracts/ServiceResultError.php diff --git a/app/Dto/Builder/CaptchaToken.php b/app/application/app/Dto/Builder/CaptchaToken.php similarity index 100% rename from app/Dto/Builder/CaptchaToken.php rename to app/application/app/Dto/Builder/CaptchaToken.php diff --git a/app/Dto/Builder/Role.php b/app/application/app/Dto/Builder/Role.php similarity index 100% rename from app/Dto/Builder/Role.php rename to app/application/app/Dto/Builder/Role.php diff --git a/app/Dto/Builder/User.php b/app/application/app/Dto/Builder/User.php similarity index 100% rename from app/Dto/Builder/User.php rename to app/application/app/Dto/Builder/User.php diff --git a/app/Dto/HttpUserData.php b/app/application/app/Dto/HttpUserData.php similarity index 100% rename from app/Dto/HttpUserData.php rename to app/application/app/Dto/HttpUserData.php diff --git a/app/Dto/QuerySettingsDto.php b/app/application/app/Dto/QuerySettingsDto.php similarity index 100% rename from app/Dto/QuerySettingsDto.php rename to app/application/app/Dto/QuerySettingsDto.php diff --git a/app/Dto/Repository/DataCaptchaRepository/DataCaptcha.php b/app/application/app/Dto/Repository/DataCaptchaRepository/DataCaptcha.php similarity index 100% rename from app/Dto/Repository/DataCaptchaRepository/DataCaptcha.php rename to app/application/app/Dto/Repository/DataCaptchaRepository/DataCaptcha.php diff --git a/app/Dto/Request/Api/V1/Captcha/CaptchaPublicToken.php b/app/application/app/Dto/Request/Api/V1/Captcha/CaptchaPublicToken.php similarity index 100% rename from app/Dto/Request/Api/V1/Captcha/CaptchaPublicToken.php rename to app/application/app/Dto/Request/Api/V1/Captcha/CaptchaPublicToken.php diff --git a/app/Dto/Request/Api/V1/Captcha/CheckingDto.php b/app/application/app/Dto/Request/Api/V1/Captcha/CheckingDto.php similarity index 100% rename from app/Dto/Request/Api/V1/Captcha/CheckingDto.php rename to app/application/app/Dto/Request/Api/V1/Captcha/CheckingDto.php diff --git a/app/Dto/Request/Api/V1/Captcha/VerificationInformationDto.php b/app/application/app/Dto/Request/Api/V1/Captcha/VerificationInformationDto.php similarity index 100% rename from app/Dto/Request/Api/V1/Captcha/VerificationInformationDto.php rename to app/application/app/Dto/Request/Api/V1/Captcha/VerificationInformationDto.php diff --git a/app/Dto/Request/Authorization.php b/app/application/app/Dto/Request/Authorization.php similarity index 100% rename from app/Dto/Request/Authorization.php rename to app/application/app/Dto/Request/Authorization.php diff --git a/app/Dto/Request/Dto.php b/app/application/app/Dto/Request/Dto.php similarity index 100% rename from app/Dto/Request/Dto.php rename to app/application/app/Dto/Request/Dto.php diff --git a/app/Dto/Request/Private/CaptchaToken/Index.php b/app/application/app/Dto/Request/Private/CaptchaToken/Index.php similarity index 100% rename from app/Dto/Request/Private/CaptchaToken/Index.php rename to app/application/app/Dto/Request/Private/CaptchaToken/Index.php diff --git a/app/Dto/Request/Private/CaptchaToken/StoreUpdate.php b/app/application/app/Dto/Request/Private/CaptchaToken/StoreUpdate.php similarity index 100% rename from app/Dto/Request/Private/CaptchaToken/StoreUpdate.php rename to app/application/app/Dto/Request/Private/CaptchaToken/StoreUpdate.php diff --git a/app/Dto/Request/Private/Profile/Update.php b/app/application/app/Dto/Request/Private/Profile/Update.php similarity index 100% rename from app/Dto/Request/Private/Profile/Update.php rename to app/application/app/Dto/Request/Private/Profile/Update.php diff --git a/app/Dto/Request/Private/Profile/UpdateSettings.php b/app/application/app/Dto/Request/Private/Profile/UpdateSettings.php similarity index 100% rename from app/Dto/Request/Private/Profile/UpdateSettings.php rename to app/application/app/Dto/Request/Private/Profile/UpdateSettings.php diff --git a/app/Dto/Request/Private/Role/Index.php b/app/application/app/Dto/Request/Private/Role/Index.php similarity index 100% rename from app/Dto/Request/Private/Role/Index.php rename to app/application/app/Dto/Request/Private/Role/Index.php diff --git a/app/Dto/Request/Private/Role/StoreUpdate.php b/app/application/app/Dto/Request/Private/Role/StoreUpdate.php similarity index 100% rename from app/Dto/Request/Private/Role/StoreUpdate.php rename to app/application/app/Dto/Request/Private/Role/StoreUpdate.php diff --git a/app/Dto/Request/Private/User/Index.php b/app/application/app/Dto/Request/Private/User/Index.php similarity index 100% rename from app/Dto/Request/Private/User/Index.php rename to app/application/app/Dto/Request/Private/User/Index.php diff --git a/app/Dto/Request/Private/User/StoreUpdate.php b/app/application/app/Dto/Request/Private/User/StoreUpdate.php similarity index 100% rename from app/Dto/Request/Private/User/StoreUpdate.php rename to app/application/app/Dto/Request/Private/User/StoreUpdate.php diff --git a/app/Dto/Request/Private/User/UpdatePassword.php b/app/application/app/Dto/Request/Private/User/UpdatePassword.php similarity index 100% rename from app/Dto/Request/Private/User/UpdatePassword.php rename to app/application/app/Dto/Request/Private/User/UpdatePassword.php diff --git a/app/Dto/User/ManyRoleDto.php b/app/application/app/Dto/User/ManyRoleDto.php similarity index 100% rename from app/Dto/User/ManyRoleDto.php rename to app/application/app/Dto/User/ManyRoleDto.php diff --git a/app/Enums/CaptchaLogType.php b/app/application/app/Enums/CaptchaLogType.php similarity index 100% rename from app/Enums/CaptchaLogType.php rename to app/application/app/Enums/CaptchaLogType.php diff --git a/app/Enums/Lang.php b/app/application/app/Enums/Lang.php similarity index 100% rename from app/Enums/Lang.php rename to app/application/app/Enums/Lang.php diff --git a/app/Enums/Permission.php b/app/application/app/Enums/Permission.php similarity index 100% rename from app/Enums/Permission.php rename to app/application/app/Enums/Permission.php diff --git a/app/Enums/SystemRole.php b/app/application/app/Enums/SystemRole.php similarity index 100% rename from app/Enums/SystemRole.php rename to app/application/app/Enums/SystemRole.php diff --git a/app/Exceptions/Dto/User/ManyRoleDtoException.php b/app/application/app/Exceptions/Dto/User/ManyRoleDtoException.php similarity index 100% rename from app/Exceptions/Dto/User/ManyRoleDtoException.php rename to app/application/app/Exceptions/Dto/User/ManyRoleDtoException.php diff --git a/app/Exceptions/Handler.php b/app/application/app/Exceptions/Handler.php similarity index 100% rename from app/Exceptions/Handler.php rename to app/application/app/Exceptions/Handler.php diff --git a/app/Exceptions/Repositories/DataCaptchaRepositoryException.php b/app/application/app/Exceptions/Repositories/DataCaptchaRepositoryException.php similarity index 100% rename from app/Exceptions/Repositories/DataCaptchaRepositoryException.php rename to app/application/app/Exceptions/Repositories/DataCaptchaRepositoryException.php diff --git a/app/Exceptions/Rule/RoleSyncPermissionsCommandHandlerException.php b/app/application/app/Exceptions/Rule/RoleSyncPermissionsCommandHandlerException.php similarity index 100% rename from app/Exceptions/Rule/RoleSyncPermissionsCommandHandlerException.php rename to app/application/app/Exceptions/Rule/RoleSyncPermissionsCommandHandlerException.php diff --git a/app/Exceptions/Service/GenerateTokenCommandException.php b/app/application/app/Exceptions/Service/GenerateTokenCommandException.php similarity index 100% rename from app/Exceptions/Service/GenerateTokenCommandException.php rename to app/application/app/Exceptions/Service/GenerateTokenCommandException.php diff --git a/app/Helpers/Helpers.php b/app/application/app/Helpers/Helpers.php similarity index 100% rename from app/Helpers/Helpers.php rename to app/application/app/Helpers/Helpers.php diff --git a/app/Http/Controllers/Api/V1/CaptchaController.php b/app/application/app/Http/Controllers/Api/V1/CaptchaController.php similarity index 100% rename from app/Http/Controllers/Api/V1/CaptchaController.php rename to app/application/app/Http/Controllers/Api/V1/CaptchaController.php diff --git a/app/Http/Controllers/Api/V1/Controller.php b/app/application/app/Http/Controllers/Api/V1/Controller.php similarity index 100% rename from app/Http/Controllers/Api/V1/Controller.php rename to app/application/app/Http/Controllers/Api/V1/Controller.php diff --git a/app/Http/Controllers/AuthController.php b/app/application/app/Http/Controllers/AuthController.php similarity index 100% rename from app/Http/Controllers/AuthController.php rename to app/application/app/Http/Controllers/AuthController.php diff --git a/app/Http/Controllers/Controller.php b/app/application/app/Http/Controllers/Controller.php similarity index 100% rename from app/Http/Controllers/Controller.php rename to app/application/app/Http/Controllers/Controller.php diff --git a/app/Http/Controllers/Private/CaptchaTokensController.php b/app/application/app/Http/Controllers/Private/CaptchaTokensController.php similarity index 100% rename from app/Http/Controllers/Private/CaptchaTokensController.php rename to app/application/app/Http/Controllers/Private/CaptchaTokensController.php diff --git a/app/Http/Controllers/Private/Controller.php b/app/application/app/Http/Controllers/Private/Controller.php similarity index 100% rename from app/Http/Controllers/Private/Controller.php rename to app/application/app/Http/Controllers/Private/Controller.php diff --git a/app/Http/Controllers/Private/DashboardController.php b/app/application/app/Http/Controllers/Private/DashboardController.php similarity index 100% rename from app/Http/Controllers/Private/DashboardController.php rename to app/application/app/Http/Controllers/Private/DashboardController.php diff --git a/app/Http/Controllers/Private/ProfileController.php b/app/application/app/Http/Controllers/Private/ProfileController.php similarity index 100% rename from app/Http/Controllers/Private/ProfileController.php rename to app/application/app/Http/Controllers/Private/ProfileController.php diff --git a/app/Http/Controllers/Private/RolesController.php b/app/application/app/Http/Controllers/Private/RolesController.php similarity index 100% rename from app/Http/Controllers/Private/RolesController.php rename to app/application/app/Http/Controllers/Private/RolesController.php diff --git a/app/Http/Controllers/Private/UsersController.php b/app/application/app/Http/Controllers/Private/UsersController.php similarity index 100% rename from app/Http/Controllers/Private/UsersController.php rename to app/application/app/Http/Controllers/Private/UsersController.php diff --git a/app/Http/Kernel.php b/app/application/app/Http/Kernel.php similarity index 100% rename from app/Http/Kernel.php rename to app/application/app/Http/Kernel.php diff --git a/app/Http/Middleware/Authenticate.php b/app/application/app/Http/Middleware/Authenticate.php similarity index 100% rename from app/Http/Middleware/Authenticate.php rename to app/application/app/Http/Middleware/Authenticate.php diff --git a/app/Http/Middleware/EncryptCookies.php b/app/application/app/Http/Middleware/EncryptCookies.php similarity index 100% rename from app/Http/Middleware/EncryptCookies.php rename to app/application/app/Http/Middleware/EncryptCookies.php diff --git a/app/Http/Middleware/EnsureUserIsVerified.php b/app/application/app/Http/Middleware/EnsureUserIsVerified.php similarity index 100% rename from app/Http/Middleware/EnsureUserIsVerified.php rename to app/application/app/Http/Middleware/EnsureUserIsVerified.php diff --git a/app/Http/Middleware/PreventRequestsDuringMaintenance.php b/app/application/app/Http/Middleware/PreventRequestsDuringMaintenance.php similarity index 100% rename from app/Http/Middleware/PreventRequestsDuringMaintenance.php rename to app/application/app/Http/Middleware/PreventRequestsDuringMaintenance.php diff --git a/app/Http/Middleware/RedirectIfAuthenticated.php b/app/application/app/Http/Middleware/RedirectIfAuthenticated.php similarity index 100% rename from app/Http/Middleware/RedirectIfAuthenticated.php rename to app/application/app/Http/Middleware/RedirectIfAuthenticated.php diff --git a/app/Http/Middleware/TrimStrings.php b/app/application/app/Http/Middleware/TrimStrings.php similarity index 100% rename from app/Http/Middleware/TrimStrings.php rename to app/application/app/Http/Middleware/TrimStrings.php diff --git a/app/Http/Middleware/TrustHosts.php b/app/application/app/Http/Middleware/TrustHosts.php similarity index 100% rename from app/Http/Middleware/TrustHosts.php rename to app/application/app/Http/Middleware/TrustHosts.php diff --git a/app/Http/Middleware/TrustProxies.php b/app/application/app/Http/Middleware/TrustProxies.php similarity index 100% rename from app/Http/Middleware/TrustProxies.php rename to app/application/app/Http/Middleware/TrustProxies.php diff --git a/app/Http/Middleware/UserLocale.php b/app/application/app/Http/Middleware/UserLocale.php similarity index 100% rename from app/Http/Middleware/UserLocale.php rename to app/application/app/Http/Middleware/UserLocale.php diff --git a/app/Http/Middleware/ValidateSignature.php b/app/application/app/Http/Middleware/ValidateSignature.php similarity index 100% rename from app/Http/Middleware/ValidateSignature.php rename to app/application/app/Http/Middleware/ValidateSignature.php diff --git a/app/Http/Middleware/VerifyCsrfToken.php b/app/application/app/Http/Middleware/VerifyCsrfToken.php similarity index 100% rename from app/Http/Middleware/VerifyCsrfToken.php rename to app/application/app/Http/Middleware/VerifyCsrfToken.php diff --git a/app/Http/Requests/Api/V1/Captcha/CaptchaRequest.php b/app/application/app/Http/Requests/Api/V1/Captcha/CaptchaRequest.php similarity index 100% rename from app/Http/Requests/Api/V1/Captcha/CaptchaRequest.php rename to app/application/app/Http/Requests/Api/V1/Captcha/CaptchaRequest.php diff --git a/app/Http/Requests/Api/V1/Captcha/CheckingRequest.php b/app/application/app/Http/Requests/Api/V1/Captcha/CheckingRequest.php similarity index 100% rename from app/Http/Requests/Api/V1/Captcha/CheckingRequest.php rename to app/application/app/Http/Requests/Api/V1/Captcha/CheckingRequest.php diff --git a/app/Http/Requests/Api/V1/Captcha/VerificationInformationRequest.php b/app/application/app/Http/Requests/Api/V1/Captcha/VerificationInformationRequest.php similarity index 100% rename from app/Http/Requests/Api/V1/Captcha/VerificationInformationRequest.php rename to app/application/app/Http/Requests/Api/V1/Captcha/VerificationInformationRequest.php diff --git a/app/Http/Requests/AuthorizationRequest.php b/app/application/app/Http/Requests/AuthorizationRequest.php similarity index 100% rename from app/Http/Requests/AuthorizationRequest.php rename to app/application/app/Http/Requests/AuthorizationRequest.php diff --git a/app/Http/Requests/Private/CaptchaTokens/IndexRequest.php b/app/application/app/Http/Requests/Private/CaptchaTokens/IndexRequest.php similarity index 100% rename from app/Http/Requests/Private/CaptchaTokens/IndexRequest.php rename to app/application/app/Http/Requests/Private/CaptchaTokens/IndexRequest.php diff --git a/app/Http/Requests/Private/CaptchaTokens/StoreUpdateRequest.php b/app/application/app/Http/Requests/Private/CaptchaTokens/StoreUpdateRequest.php similarity index 100% rename from app/Http/Requests/Private/CaptchaTokens/StoreUpdateRequest.php rename to app/application/app/Http/Requests/Private/CaptchaTokens/StoreUpdateRequest.php diff --git a/app/Http/Requests/Private/Profile/UpdatePasswordRequest.php b/app/application/app/Http/Requests/Private/Profile/UpdatePasswordRequest.php similarity index 100% rename from app/Http/Requests/Private/Profile/UpdatePasswordRequest.php rename to app/application/app/Http/Requests/Private/Profile/UpdatePasswordRequest.php diff --git a/app/Http/Requests/Private/Profile/UpdateRequest.php b/app/application/app/Http/Requests/Private/Profile/UpdateRequest.php similarity index 100% rename from app/Http/Requests/Private/Profile/UpdateRequest.php rename to app/application/app/Http/Requests/Private/Profile/UpdateRequest.php diff --git a/app/Http/Requests/Private/Profile/UpdateSettingsRequest.php b/app/application/app/Http/Requests/Private/Profile/UpdateSettingsRequest.php similarity index 100% rename from app/Http/Requests/Private/Profile/UpdateSettingsRequest.php rename to app/application/app/Http/Requests/Private/Profile/UpdateSettingsRequest.php diff --git a/app/Http/Requests/Private/Roles/IndexRequest.php b/app/application/app/Http/Requests/Private/Roles/IndexRequest.php similarity index 100% rename from app/Http/Requests/Private/Roles/IndexRequest.php rename to app/application/app/Http/Requests/Private/Roles/IndexRequest.php diff --git a/app/Http/Requests/Private/Roles/StoreUpdateRequest.php b/app/application/app/Http/Requests/Private/Roles/StoreUpdateRequest.php similarity index 100% rename from app/Http/Requests/Private/Roles/StoreUpdateRequest.php rename to app/application/app/Http/Requests/Private/Roles/StoreUpdateRequest.php diff --git a/app/Http/Requests/Private/Users/IndexRequest.php b/app/application/app/Http/Requests/Private/Users/IndexRequest.php similarity index 100% rename from app/Http/Requests/Private/Users/IndexRequest.php rename to app/application/app/Http/Requests/Private/Users/IndexRequest.php diff --git a/app/Http/Requests/Private/Users/StoreUpdateRequest.php b/app/application/app/Http/Requests/Private/Users/StoreUpdateRequest.php similarity index 100% rename from app/Http/Requests/Private/Users/StoreUpdateRequest.php rename to app/application/app/Http/Requests/Private/Users/StoreUpdateRequest.php diff --git a/app/Http/Requests/Private/Users/UpdatePasswordRequest.php b/app/application/app/Http/Requests/Private/Users/UpdatePasswordRequest.php similarity index 100% rename from app/Http/Requests/Private/Users/UpdatePasswordRequest.php rename to app/application/app/Http/Requests/Private/Users/UpdatePasswordRequest.php diff --git a/app/Http/Resources/Api/V1/Captcha.php b/app/application/app/Http/Resources/Api/V1/Captcha.php similarity index 100% rename from app/Http/Resources/Api/V1/Captcha.php rename to app/application/app/Http/Resources/Api/V1/Captcha.php diff --git a/app/Http/Resources/Api/V1/CaptchaVerificationInformation.php b/app/application/app/Http/Resources/Api/V1/CaptchaVerificationInformation.php similarity index 100% rename from app/Http/Resources/Api/V1/CaptchaVerificationInformation.php rename to app/application/app/Http/Resources/Api/V1/CaptchaVerificationInformation.php diff --git a/app/Http/Resources/Api/V1/CaptchaVerified.php b/app/application/app/Http/Resources/Api/V1/CaptchaVerified.php similarity index 100% rename from app/Http/Resources/Api/V1/CaptchaVerified.php rename to app/application/app/Http/Resources/Api/V1/CaptchaVerified.php diff --git a/app/Models/Captcha.php b/app/application/app/Models/Captcha.php similarity index 100% rename from app/Models/Captcha.php rename to app/application/app/Models/Captcha.php diff --git a/app/Models/CaptchaLog.php b/app/application/app/Models/CaptchaLog.php similarity index 100% rename from app/Models/CaptchaLog.php rename to app/application/app/Models/CaptchaLog.php diff --git a/app/Models/CaptchaToken.php b/app/application/app/Models/CaptchaToken.php similarity index 100% rename from app/Models/CaptchaToken.php rename to app/application/app/Models/CaptchaToken.php diff --git a/app/Models/Role.php b/app/application/app/Models/Role.php similarity index 100% rename from app/Models/Role.php rename to app/application/app/Models/Role.php diff --git a/app/Models/RolePermission.php b/app/application/app/Models/RolePermission.php similarity index 100% rename from app/Models/RolePermission.php rename to app/application/app/Models/RolePermission.php diff --git a/app/Models/User.php b/app/application/app/Models/User.php similarity index 100% rename from app/Models/User.php rename to app/application/app/Models/User.php diff --git a/app/Policies/CaptchaTokenPolicy.php b/app/application/app/Policies/CaptchaTokenPolicy.php similarity index 100% rename from app/Policies/CaptchaTokenPolicy.php rename to app/application/app/Policies/CaptchaTokenPolicy.php diff --git a/app/Policies/Policy.php b/app/application/app/Policies/Policy.php similarity index 100% rename from app/Policies/Policy.php rename to app/application/app/Policies/Policy.php diff --git a/app/Policies/RolePolicy.php b/app/application/app/Policies/RolePolicy.php similarity index 100% rename from app/Policies/RolePolicy.php rename to app/application/app/Policies/RolePolicy.php diff --git a/app/Policies/UserPolicy.php b/app/application/app/Policies/UserPolicy.php similarity index 100% rename from app/Policies/UserPolicy.php rename to app/application/app/Policies/UserPolicy.php diff --git a/app/Providers/AppServiceProvider.php b/app/application/app/Providers/AppServiceProvider.php similarity index 100% rename from app/Providers/AppServiceProvider.php rename to app/application/app/Providers/AppServiceProvider.php diff --git a/app/Providers/AuthServiceProvider.php b/app/application/app/Providers/AuthServiceProvider.php similarity index 100% rename from app/Providers/AuthServiceProvider.php rename to app/application/app/Providers/AuthServiceProvider.php diff --git a/app/Providers/BroadcastServiceProvider.php b/app/application/app/Providers/BroadcastServiceProvider.php similarity index 100% rename from app/Providers/BroadcastServiceProvider.php rename to app/application/app/Providers/BroadcastServiceProvider.php diff --git a/app/Providers/EventServiceProvider.php b/app/application/app/Providers/EventServiceProvider.php similarity index 100% rename from app/Providers/EventServiceProvider.php rename to app/application/app/Providers/EventServiceProvider.php diff --git a/app/Providers/RouteServiceProvider.php b/app/application/app/Providers/RouteServiceProvider.php similarity index 100% rename from app/Providers/RouteServiceProvider.php rename to app/application/app/Providers/RouteServiceProvider.php diff --git a/app/Repositories/CaptchaLogRepository.php b/app/application/app/Repositories/CaptchaLogRepository.php similarity index 100% rename from app/Repositories/CaptchaLogRepository.php rename to app/application/app/Repositories/CaptchaLogRepository.php diff --git a/app/Repositories/CaptchaRepository.php b/app/application/app/Repositories/CaptchaRepository.php similarity index 100% rename from app/Repositories/CaptchaRepository.php rename to app/application/app/Repositories/CaptchaRepository.php diff --git a/app/Repositories/CaptchaTokenRepository.php b/app/application/app/Repositories/CaptchaTokenRepository.php similarity index 100% rename from app/Repositories/CaptchaTokenRepository.php rename to app/application/app/Repositories/CaptchaTokenRepository.php diff --git a/app/Repositories/DataCaptchaRepository.php b/app/application/app/Repositories/DataCaptchaRepository.php similarity index 100% rename from app/Repositories/DataCaptchaRepository.php rename to app/application/app/Repositories/DataCaptchaRepository.php diff --git a/app/Repositories/RoleRepository.php b/app/application/app/Repositories/RoleRepository.php similarity index 100% rename from app/Repositories/RoleRepository.php rename to app/application/app/Repositories/RoleRepository.php diff --git a/app/Repositories/UserRepository.php b/app/application/app/Repositories/UserRepository.php similarity index 100% rename from app/Repositories/UserRepository.php rename to app/application/app/Repositories/UserRepository.php diff --git a/app/Rules/Permission.php b/app/application/app/Rules/Permission.php similarity index 100% rename from app/Rules/Permission.php rename to app/application/app/Rules/Permission.php diff --git a/app/ServiceResults/Api/V1/CaptchaGenerateService/Captcha.php b/app/application/app/ServiceResults/Api/V1/CaptchaGenerateService/Captcha.php similarity index 100% rename from app/ServiceResults/Api/V1/CaptchaGenerateService/Captcha.php rename to app/application/app/ServiceResults/Api/V1/CaptchaGenerateService/Captcha.php diff --git a/app/ServiceResults/Api/V1/CaptchaService/Captcha.php b/app/application/app/ServiceResults/Api/V1/CaptchaService/Captcha.php similarity index 100% rename from app/ServiceResults/Api/V1/CaptchaService/Captcha.php rename to app/application/app/ServiceResults/Api/V1/CaptchaService/Captcha.php diff --git a/app/ServiceResults/Api/V1/CaptchaService/CaptchaVerificationInformationResult.php b/app/application/app/ServiceResults/Api/V1/CaptchaService/CaptchaVerificationInformationResult.php similarity index 100% rename from app/ServiceResults/Api/V1/CaptchaService/CaptchaVerificationInformationResult.php rename to app/application/app/ServiceResults/Api/V1/CaptchaService/CaptchaVerificationInformationResult.php diff --git a/app/ServiceResults/Api/V1/CaptchaService/CaptchaVerifiedResult.php b/app/application/app/ServiceResults/Api/V1/CaptchaService/CaptchaVerifiedResult.php similarity index 100% rename from app/ServiceResults/Api/V1/CaptchaService/CaptchaVerifiedResult.php rename to app/application/app/ServiceResults/Api/V1/CaptchaService/CaptchaVerifiedResult.php diff --git a/app/ServiceResults/ServiceResult.php b/app/application/app/ServiceResults/ServiceResult.php similarity index 100% rename from app/ServiceResults/ServiceResult.php rename to app/application/app/ServiceResults/ServiceResult.php diff --git a/app/ServiceResults/ServiceResultArray.php b/app/application/app/ServiceResults/ServiceResultArray.php similarity index 100% rename from app/ServiceResults/ServiceResultArray.php rename to app/application/app/ServiceResults/ServiceResultArray.php diff --git a/app/ServiceResults/ServiceResultError.php b/app/application/app/ServiceResults/ServiceResultError.php similarity index 100% rename from app/ServiceResults/ServiceResultError.php rename to app/application/app/ServiceResults/ServiceResultError.php diff --git a/app/ServiceResults/ServiceResultSuccess.php b/app/application/app/ServiceResults/ServiceResultSuccess.php similarity index 100% rename from app/ServiceResults/ServiceResultSuccess.php rename to app/application/app/ServiceResults/ServiceResultSuccess.php diff --git a/app/ServiceResults/StoreUpdateResult.php b/app/application/app/ServiceResults/StoreUpdateResult.php similarity index 100% rename from app/ServiceResults/StoreUpdateResult.php rename to app/application/app/ServiceResults/StoreUpdateResult.php diff --git a/app/Services/Api/V1/CaptchaGenerateService.php b/app/application/app/Services/Api/V1/CaptchaGenerateService.php similarity index 100% rename from app/Services/Api/V1/CaptchaGenerateService.php rename to app/application/app/Services/Api/V1/CaptchaGenerateService.php diff --git a/app/Services/Api/V1/CaptchaService.php b/app/application/app/Services/Api/V1/CaptchaService.php similarity index 100% rename from app/Services/Api/V1/CaptchaService.php rename to app/application/app/Services/Api/V1/CaptchaService.php diff --git a/app/Services/AuthService.php b/app/application/app/Services/AuthService.php similarity index 100% rename from app/Services/AuthService.php rename to app/application/app/Services/AuthService.php diff --git a/app/Services/Captcha/CaptchaHandler.php b/app/application/app/Services/Captcha/CaptchaHandler.php similarity index 100% rename from app/Services/Captcha/CaptchaHandler.php rename to app/application/app/Services/Captcha/CaptchaHandler.php diff --git a/app/Services/Captcha/CheckingCommand.php b/app/application/app/Services/Captcha/CheckingCommand.php similarity index 100% rename from app/Services/Captcha/CheckingCommand.php rename to app/application/app/Services/Captcha/CheckingCommand.php diff --git a/app/Services/CaptchaLog/CaptchaLogHandler.php b/app/application/app/Services/CaptchaLog/CaptchaLogHandler.php similarity index 100% rename from app/Services/CaptchaLog/CaptchaLogHandler.php rename to app/application/app/Services/CaptchaLog/CaptchaLogHandler.php diff --git a/app/Services/CaptchaToken/BuilderCommand.php b/app/application/app/Services/CaptchaToken/BuilderCommand.php similarity index 100% rename from app/Services/CaptchaToken/BuilderCommand.php rename to app/application/app/Services/CaptchaToken/BuilderCommand.php diff --git a/app/Services/CaptchaToken/CaptchaTokenHandler.php b/app/application/app/Services/CaptchaToken/CaptchaTokenHandler.php similarity index 100% rename from app/Services/CaptchaToken/CaptchaTokenHandler.php rename to app/application/app/Services/CaptchaToken/CaptchaTokenHandler.php diff --git a/app/Services/CryptographyString.php b/app/application/app/Services/CryptographyString.php similarity index 100% rename from app/Services/CryptographyString.php rename to app/application/app/Services/CryptographyString.php diff --git a/app/Services/GenerateTokenCommand/GenerateTokenCommand.php b/app/application/app/Services/GenerateTokenCommand/GenerateTokenCommand.php similarity index 100% rename from app/Services/GenerateTokenCommand/GenerateTokenCommand.php rename to app/application/app/Services/GenerateTokenCommand/GenerateTokenCommand.php diff --git a/app/Services/GenerateTokenCommand/GenerateTokenUlidCommand.php b/app/application/app/Services/GenerateTokenCommand/GenerateTokenUlidCommand.php similarity index 100% rename from app/Services/GenerateTokenCommand/GenerateTokenUlidCommand.php rename to app/application/app/Services/GenerateTokenCommand/GenerateTokenUlidCommand.php diff --git a/app/Services/GenerateTokenCommand/GenerateTokenUuidCommand.php b/app/application/app/Services/GenerateTokenCommand/GenerateTokenUuidCommand.php similarity index 100% rename from app/Services/GenerateTokenCommand/GenerateTokenUuidCommand.php rename to app/application/app/Services/GenerateTokenCommand/GenerateTokenUuidCommand.php diff --git a/app/Services/Private/CaptchaTokenService.php b/app/application/app/Services/Private/CaptchaTokenService.php similarity index 100% rename from app/Services/Private/CaptchaTokenService.php rename to app/application/app/Services/Private/CaptchaTokenService.php diff --git a/app/Services/Private/ProfileService.php b/app/application/app/Services/Private/ProfileService.php similarity index 100% rename from app/Services/Private/ProfileService.php rename to app/application/app/Services/Private/ProfileService.php diff --git a/app/Services/Private/RoleService.php b/app/application/app/Services/Private/RoleService.php similarity index 100% rename from app/Services/Private/RoleService.php rename to app/application/app/Services/Private/RoleService.php diff --git a/app/Services/Private/UserService.php b/app/application/app/Services/Private/UserService.php similarity index 100% rename from app/Services/Private/UserService.php rename to app/application/app/Services/Private/UserService.php diff --git a/app/Services/Role/BuilderCommand.php b/app/application/app/Services/Role/BuilderCommand.php similarity index 100% rename from app/Services/Role/BuilderCommand.php rename to app/application/app/Services/Role/BuilderCommand.php diff --git a/app/Services/Role/RoleCommandHandler.php b/app/application/app/Services/Role/RoleCommandHandler.php similarity index 100% rename from app/Services/Role/RoleCommandHandler.php rename to app/application/app/Services/Role/RoleCommandHandler.php diff --git a/app/Services/Role/RoleSyncPermissionsCommandHandler.php b/app/application/app/Services/Role/RoleSyncPermissionsCommandHandler.php similarity index 100% rename from app/Services/Role/RoleSyncPermissionsCommandHandler.php rename to app/application/app/Services/Role/RoleSyncPermissionsCommandHandler.php diff --git a/app/Services/Search/CreateSearchInstanceCommand.php b/app/application/app/Services/Search/CreateSearchInstanceCommand.php similarity index 100% rename from app/Services/Search/CreateSearchInstanceCommand.php rename to app/application/app/Services/Search/CreateSearchInstanceCommand.php diff --git a/app/Services/Search/Search.php b/app/application/app/Services/Search/Search.php similarity index 100% rename from app/Services/Search/Search.php rename to app/application/app/Services/Search/Search.php diff --git a/app/Services/Service.php b/app/application/app/Services/Service.php similarity index 100% rename from app/Services/Service.php rename to app/application/app/Services/Service.php diff --git a/app/Services/User/BuilderCommand.php b/app/application/app/Services/User/BuilderCommand.php similarity index 100% rename from app/Services/User/BuilderCommand.php rename to app/application/app/Services/User/BuilderCommand.php diff --git a/app/Services/User/UserCommandHandler.php b/app/application/app/Services/User/UserCommandHandler.php similarity index 100% rename from app/Services/User/UserCommandHandler.php rename to app/application/app/Services/User/UserCommandHandler.php diff --git a/app/View/Components/Private/Forms/Checkbox.php b/app/application/app/View/Components/Private/Forms/Checkbox.php similarity index 100% rename from app/View/Components/Private/Forms/Checkbox.php rename to app/application/app/View/Components/Private/Forms/Checkbox.php diff --git a/app/View/Components/Private/Forms/Form.php b/app/application/app/View/Components/Private/Forms/Form.php similarity index 100% rename from app/View/Components/Private/Forms/Form.php rename to app/application/app/View/Components/Private/Forms/Form.php diff --git a/app/View/Components/Private/Forms/Input.php b/app/application/app/View/Components/Private/Forms/Input.php similarity index 100% rename from app/View/Components/Private/Forms/Input.php rename to app/application/app/View/Components/Private/Forms/Input.php diff --git a/app/View/Components/Private/Forms/MultiCheckbox.php b/app/application/app/View/Components/Private/Forms/MultiCheckbox.php similarity index 100% rename from app/View/Components/Private/Forms/MultiCheckbox.php rename to app/application/app/View/Components/Private/Forms/MultiCheckbox.php diff --git a/app/View/Components/Private/Forms/PermissionsForRole.php b/app/application/app/View/Components/Private/Forms/PermissionsForRole.php similarity index 100% rename from app/View/Components/Private/Forms/PermissionsForRole.php rename to app/application/app/View/Components/Private/Forms/PermissionsForRole.php diff --git a/app/View/Components/Private/Forms/Select.php b/app/application/app/View/Components/Private/Forms/Select.php similarity index 100% rename from app/View/Components/Private/Forms/Select.php rename to app/application/app/View/Components/Private/Forms/Select.php diff --git a/app/View/Components/Private/Layout.php b/app/application/app/View/Components/Private/Layout.php similarity index 100% rename from app/View/Components/Private/Layout.php rename to app/application/app/View/Components/Private/Layout.php diff --git a/app/View/Components/Public/Layout.php b/app/application/app/View/Components/Public/Layout.php similarity index 100% rename from app/View/Components/Public/Layout.php rename to app/application/app/View/Components/Public/Layout.php diff --git a/artisan b/app/application/artisan similarity index 100% rename from artisan rename to app/application/artisan diff --git a/bootstrap/app.php b/app/application/bootstrap/app.php similarity index 100% rename from bootstrap/app.php rename to app/application/bootstrap/app.php diff --git a/bootstrap/cache/.gitignore b/app/application/bootstrap/cache/.gitignore old mode 100644 new mode 100755 similarity index 100% rename from bootstrap/cache/.gitignore rename to app/application/bootstrap/cache/.gitignore diff --git a/composer.json b/app/application/composer.json similarity index 100% rename from composer.json rename to app/application/composer.json diff --git a/composer.lock b/app/application/composer.lock similarity index 100% rename from composer.lock rename to app/application/composer.lock diff --git a/config/app.php b/app/application/config/app.php similarity index 100% rename from config/app.php rename to app/application/config/app.php diff --git a/config/auth.php b/app/application/config/auth.php similarity index 100% rename from config/auth.php rename to app/application/config/auth.php diff --git a/config/broadcasting.php b/app/application/config/broadcasting.php similarity index 100% rename from config/broadcasting.php rename to app/application/config/broadcasting.php diff --git a/config/cache.php b/app/application/config/cache.php similarity index 100% rename from config/cache.php rename to app/application/config/cache.php diff --git a/config/captcha.php b/app/application/config/captcha.php similarity index 100% rename from config/captcha.php rename to app/application/config/captcha.php diff --git a/config/cors.php b/app/application/config/cors.php similarity index 100% rename from config/cors.php rename to app/application/config/cors.php diff --git a/config/database.php b/app/application/config/database.php similarity index 100% rename from config/database.php rename to app/application/config/database.php diff --git a/config/filesystems.php b/app/application/config/filesystems.php similarity index 100% rename from config/filesystems.php rename to app/application/config/filesystems.php diff --git a/config/hashing.php b/app/application/config/hashing.php similarity index 100% rename from config/hashing.php rename to app/application/config/hashing.php diff --git a/config/logging.php b/app/application/config/logging.php similarity index 100% rename from config/logging.php rename to app/application/config/logging.php diff --git a/config/mail.php b/app/application/config/mail.php similarity index 100% rename from config/mail.php rename to app/application/config/mail.php diff --git a/config/queue.php b/app/application/config/queue.php similarity index 100% rename from config/queue.php rename to app/application/config/queue.php diff --git a/config/rate_limiting.php b/app/application/config/rate_limiting.php similarity index 100% rename from config/rate_limiting.php rename to app/application/config/rate_limiting.php diff --git a/config/sanctum.php b/app/application/config/sanctum.php similarity index 100% rename from config/sanctum.php rename to app/application/config/sanctum.php diff --git a/config/services.php b/app/application/config/services.php similarity index 100% rename from config/services.php rename to app/application/config/services.php diff --git a/config/session.php b/app/application/config/session.php similarity index 100% rename from config/session.php rename to app/application/config/session.php diff --git a/config/view.php b/app/application/config/view.php similarity index 100% rename from config/view.php rename to app/application/config/view.php diff --git a/database/.gitignore b/app/application/database/.gitignore similarity index 100% rename from database/.gitignore rename to app/application/database/.gitignore diff --git a/database/factories/UserFactory.php b/app/application/database/factories/UserFactory.php similarity index 100% rename from database/factories/UserFactory.php rename to app/application/database/factories/UserFactory.php diff --git a/database/migrations/2014_10_12_000000_create_users_table.php b/app/application/database/migrations/2014_10_12_000000_create_users_table.php similarity index 100% rename from database/migrations/2014_10_12_000000_create_users_table.php rename to app/application/database/migrations/2014_10_12_000000_create_users_table.php diff --git a/database/migrations/2014_10_12_100000_create_password_reset_tokens_table.php b/app/application/database/migrations/2014_10_12_100000_create_password_reset_tokens_table.php similarity index 100% rename from database/migrations/2014_10_12_100000_create_password_reset_tokens_table.php rename to app/application/database/migrations/2014_10_12_100000_create_password_reset_tokens_table.php diff --git a/database/migrations/2019_08_19_000000_create_failed_jobs_table.php b/app/application/database/migrations/2019_08_19_000000_create_failed_jobs_table.php similarity index 100% rename from database/migrations/2019_08_19_000000_create_failed_jobs_table.php rename to app/application/database/migrations/2019_08_19_000000_create_failed_jobs_table.php diff --git a/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php b/app/application/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php similarity index 100% rename from database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php rename to app/application/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php diff --git a/database/migrations/2023_06_28_155124_create_roles.php b/app/application/database/migrations/2023_06_28_155124_create_roles.php similarity index 100% rename from database/migrations/2023_06_28_155124_create_roles.php rename to app/application/database/migrations/2023_06_28_155124_create_roles.php diff --git a/database/migrations/2023_08_03_145020_create_captcha_tokens_table.php b/app/application/database/migrations/2023_08_03_145020_create_captcha_tokens_table.php similarity index 100% rename from database/migrations/2023_08_03_145020_create_captcha_tokens_table.php rename to app/application/database/migrations/2023_08_03_145020_create_captcha_tokens_table.php diff --git a/database/migrations/2023_08_27_163058_create_captcha.php b/app/application/database/migrations/2023_08_27_163058_create_captcha.php similarity index 100% rename from database/migrations/2023_08_27_163058_create_captcha.php rename to app/application/database/migrations/2023_08_27_163058_create_captcha.php diff --git a/database/seeders/DatabaseSeeder.php b/app/application/database/seeders/DatabaseSeeder.php similarity index 100% rename from database/seeders/DatabaseSeeder.php rename to app/application/database/seeders/DatabaseSeeder.php diff --git a/lang/en.json b/app/application/lang/en.json similarity index 100% rename from lang/en.json rename to app/application/lang/en.json diff --git a/lang/en/auth.php b/app/application/lang/en/auth.php similarity index 100% rename from lang/en/auth.php rename to app/application/lang/en/auth.php diff --git a/lang/en/http-statuses.php b/app/application/lang/en/http-statuses.php similarity index 100% rename from lang/en/http-statuses.php rename to app/application/lang/en/http-statuses.php diff --git a/lang/en/pagination.php b/app/application/lang/en/pagination.php similarity index 100% rename from lang/en/pagination.php rename to app/application/lang/en/pagination.php diff --git a/lang/en/passwords.php b/app/application/lang/en/passwords.php similarity index 100% rename from lang/en/passwords.php rename to app/application/lang/en/passwords.php diff --git a/lang/en/permissions.php b/app/application/lang/en/permissions.php similarity index 100% rename from lang/en/permissions.php rename to app/application/lang/en/permissions.php diff --git a/lang/en/sections.php b/app/application/lang/en/sections.php similarity index 100% rename from lang/en/sections.php rename to app/application/lang/en/sections.php diff --git a/lang/en/validation.php b/app/application/lang/en/validation.php similarity index 100% rename from lang/en/validation.php rename to app/application/lang/en/validation.php diff --git a/lang/ru.json b/app/application/lang/ru.json similarity index 100% rename from lang/ru.json rename to app/application/lang/ru.json diff --git a/lang/ru/auth.php b/app/application/lang/ru/auth.php similarity index 100% rename from lang/ru/auth.php rename to app/application/lang/ru/auth.php diff --git a/lang/ru/http-statuses.php b/app/application/lang/ru/http-statuses.php similarity index 100% rename from lang/ru/http-statuses.php rename to app/application/lang/ru/http-statuses.php diff --git a/lang/ru/pagination.php b/app/application/lang/ru/pagination.php similarity index 100% rename from lang/ru/pagination.php rename to app/application/lang/ru/pagination.php diff --git a/lang/ru/passwords.php b/app/application/lang/ru/passwords.php similarity index 100% rename from lang/ru/passwords.php rename to app/application/lang/ru/passwords.php diff --git a/lang/ru/permissions.php b/app/application/lang/ru/permissions.php similarity index 100% rename from lang/ru/permissions.php rename to app/application/lang/ru/permissions.php diff --git a/lang/ru/sections.php b/app/application/lang/ru/sections.php similarity index 100% rename from lang/ru/sections.php rename to app/application/lang/ru/sections.php diff --git a/lang/ru/validation.php b/app/application/lang/ru/validation.php similarity index 100% rename from lang/ru/validation.php rename to app/application/lang/ru/validation.php diff --git a/package-lock.json b/app/application/package-lock.json similarity index 100% rename from package-lock.json rename to app/application/package-lock.json diff --git a/package.json b/app/application/package.json similarity index 100% rename from package.json rename to app/application/package.json diff --git a/phpunit.xml b/app/application/phpunit.xml similarity index 100% rename from phpunit.xml rename to app/application/phpunit.xml diff --git a/public/.htaccess b/app/application/public/.htaccess similarity index 100% rename from public/.htaccess rename to app/application/public/.htaccess diff --git a/public/captcha/images/refresh.png b/app/application/public/captcha/images/refresh.png similarity index 100% rename from public/captcha/images/refresh.png rename to app/application/public/captcha/images/refresh.png diff --git a/public/captcha/script.js b/app/application/public/captcha/script.js similarity index 100% rename from public/captcha/script.js rename to app/application/public/captcha/script.js diff --git a/public/captcha/style.css b/app/application/public/captcha/style.css similarity index 100% rename from public/captcha/style.css rename to app/application/public/captcha/style.css diff --git a/public/favicon.ico b/app/application/public/favicon.ico similarity index 100% rename from public/favicon.ico rename to app/application/public/favicon.ico diff --git a/public/index.php b/app/application/public/index.php similarity index 100% rename from public/index.php rename to app/application/public/index.php diff --git a/public/robots.txt b/app/application/public/robots.txt similarity index 100% rename from public/robots.txt rename to app/application/public/robots.txt diff --git a/public/swagger.json b/app/application/public/swagger.json similarity index 100% rename from public/swagger.json rename to app/application/public/swagger.json diff --git a/resources/captcha/backgrounds-body/1.jpg b/app/application/resources/captcha/backgrounds-body/1.jpg similarity index 100% rename from resources/captcha/backgrounds-body/1.jpg rename to app/application/resources/captcha/backgrounds-body/1.jpg diff --git a/resources/captcha/backgrounds-body/2.jpg b/app/application/resources/captcha/backgrounds-body/2.jpg similarity index 100% rename from resources/captcha/backgrounds-body/2.jpg rename to app/application/resources/captcha/backgrounds-body/2.jpg diff --git a/resources/captcha/backgrounds-body/3.jpg b/app/application/resources/captcha/backgrounds-body/3.jpg similarity index 100% rename from resources/captcha/backgrounds-body/3.jpg rename to app/application/resources/captcha/backgrounds-body/3.jpg diff --git a/resources/captcha/backgrounds-body/4.jpg b/app/application/resources/captcha/backgrounds-body/4.jpg similarity index 100% rename from resources/captcha/backgrounds-body/4.jpg rename to app/application/resources/captcha/backgrounds-body/4.jpg diff --git a/resources/captcha/backgrounds-body/5.jpg b/app/application/resources/captcha/backgrounds-body/5.jpg similarity index 100% rename from resources/captcha/backgrounds-body/5.jpg rename to app/application/resources/captcha/backgrounds-body/5.jpg diff --git a/resources/captcha/backgrounds-body/license/license.txt b/app/application/resources/captcha/backgrounds-body/license/license.txt similarity index 100% rename from resources/captcha/backgrounds-body/license/license.txt rename to app/application/resources/captcha/backgrounds-body/license/license.txt diff --git a/resources/captcha/backgrounds-head/01.png b/app/application/resources/captcha/backgrounds-head/01.png similarity index 100% rename from resources/captcha/backgrounds-head/01.png rename to app/application/resources/captcha/backgrounds-head/01.png diff --git a/resources/captcha/backgrounds-head/02.png b/app/application/resources/captcha/backgrounds-head/02.png similarity index 100% rename from resources/captcha/backgrounds-head/02.png rename to app/application/resources/captcha/backgrounds-head/02.png diff --git a/resources/captcha/backgrounds-head/03.png b/app/application/resources/captcha/backgrounds-head/03.png similarity index 100% rename from resources/captcha/backgrounds-head/03.png rename to app/application/resources/captcha/backgrounds-head/03.png diff --git a/resources/captcha/backgrounds-head/04.png b/app/application/resources/captcha/backgrounds-head/04.png similarity index 100% rename from resources/captcha/backgrounds-head/04.png rename to app/application/resources/captcha/backgrounds-head/04.png diff --git a/resources/captcha/backgrounds-head/05.png b/app/application/resources/captcha/backgrounds-head/05.png similarity index 100% rename from resources/captcha/backgrounds-head/05.png rename to app/application/resources/captcha/backgrounds-head/05.png diff --git a/resources/captcha/backgrounds-head/06.png b/app/application/resources/captcha/backgrounds-head/06.png similarity index 100% rename from resources/captcha/backgrounds-head/06.png rename to app/application/resources/captcha/backgrounds-head/06.png diff --git a/resources/captcha/backgrounds-head/07.png b/app/application/resources/captcha/backgrounds-head/07.png similarity index 100% rename from resources/captcha/backgrounds-head/07.png rename to app/application/resources/captcha/backgrounds-head/07.png diff --git a/resources/captcha/backgrounds-head/08.png b/app/application/resources/captcha/backgrounds-head/08.png similarity index 100% rename from resources/captcha/backgrounds-head/08.png rename to app/application/resources/captcha/backgrounds-head/08.png diff --git a/resources/captcha/backgrounds-head/09.png b/app/application/resources/captcha/backgrounds-head/09.png similarity index 100% rename from resources/captcha/backgrounds-head/09.png rename to app/application/resources/captcha/backgrounds-head/09.png diff --git a/resources/captcha/backgrounds-head/10.png b/app/application/resources/captcha/backgrounds-head/10.png similarity index 100% rename from resources/captcha/backgrounds-head/10.png rename to app/application/resources/captcha/backgrounds-head/10.png diff --git a/resources/captcha/backgrounds-head/11.png b/app/application/resources/captcha/backgrounds-head/11.png similarity index 100% rename from resources/captcha/backgrounds-head/11.png rename to app/application/resources/captcha/backgrounds-head/11.png diff --git a/resources/captcha/backgrounds-head/12.png b/app/application/resources/captcha/backgrounds-head/12.png similarity index 100% rename from resources/captcha/backgrounds-head/12.png rename to app/application/resources/captcha/backgrounds-head/12.png diff --git a/resources/captcha/backgrounds-head/r1.jpg b/app/application/resources/captcha/backgrounds-head/r1.jpg similarity index 100% rename from resources/captcha/backgrounds-head/r1.jpg rename to app/application/resources/captcha/backgrounds-head/r1.jpg diff --git a/resources/captcha/backgrounds-head/r2.jpg b/app/application/resources/captcha/backgrounds-head/r2.jpg similarity index 100% rename from resources/captcha/backgrounds-head/r2.jpg rename to app/application/resources/captcha/backgrounds-head/r2.jpg diff --git a/resources/captcha/backgrounds-head/r3.jpg b/app/application/resources/captcha/backgrounds-head/r3.jpg similarity index 100% rename from resources/captcha/backgrounds-head/r3.jpg rename to app/application/resources/captcha/backgrounds-head/r3.jpg diff --git a/resources/captcha/backgrounds-head/r4.jpg b/app/application/resources/captcha/backgrounds-head/r4.jpg similarity index 100% rename from resources/captcha/backgrounds-head/r4.jpg rename to app/application/resources/captcha/backgrounds-head/r4.jpg diff --git a/resources/captcha/backgrounds-head/r5.jpg b/app/application/resources/captcha/backgrounds-head/r5.jpg similarity index 100% rename from resources/captcha/backgrounds-head/r5.jpg rename to app/application/resources/captcha/backgrounds-head/r5.jpg diff --git a/resources/captcha/fonts/ABeeZee_regular.ttf b/app/application/resources/captcha/fonts/ABeeZee_regular.ttf similarity index 100% rename from resources/captcha/fonts/ABeeZee_regular.ttf rename to app/application/resources/captcha/fonts/ABeeZee_regular.ttf diff --git a/resources/captcha/fonts/Asap_700.ttf b/app/application/resources/captcha/fonts/Asap_700.ttf similarity index 100% rename from resources/captcha/fonts/Asap_700.ttf rename to app/application/resources/captcha/fonts/Asap_700.ttf diff --git a/resources/captcha/fonts/Khand_500.ttf b/app/application/resources/captcha/fonts/Khand_500.ttf similarity index 100% rename from resources/captcha/fonts/Khand_500.ttf rename to app/application/resources/captcha/fonts/Khand_500.ttf diff --git a/resources/captcha/fonts/Open_Sans_regular.ttf b/app/application/resources/captcha/fonts/Open_Sans_regular.ttf similarity index 100% rename from resources/captcha/fonts/Open_Sans_regular.ttf rename to app/application/resources/captcha/fonts/Open_Sans_regular.ttf diff --git a/resources/captcha/fonts/Roboto_regular.ttf b/app/application/resources/captcha/fonts/Roboto_regular.ttf similarity index 100% rename from resources/captcha/fonts/Roboto_regular.ttf rename to app/application/resources/captcha/fonts/Roboto_regular.ttf diff --git a/resources/captcha/fonts/Ubuntu_regular.ttf b/app/application/resources/captcha/fonts/Ubuntu_regular.ttf similarity index 100% rename from resources/captcha/fonts/Ubuntu_regular.ttf rename to app/application/resources/captcha/fonts/Ubuntu_regular.ttf diff --git a/resources/captcha/fonts/license/LICENSE-2.0.txt b/app/application/resources/captcha/fonts/license/LICENSE-2.0.txt similarity index 100% rename from resources/captcha/fonts/license/LICENSE-2.0.txt rename to app/application/resources/captcha/fonts/license/LICENSE-2.0.txt diff --git a/resources/captcha/fonts/license/OFL.txt b/app/application/resources/captcha/fonts/license/OFL.txt similarity index 100% rename from resources/captcha/fonts/license/OFL.txt rename to app/application/resources/captcha/fonts/license/OFL.txt diff --git a/resources/captcha/fonts/license/ubuntu-font-licence-1.0.txt b/app/application/resources/captcha/fonts/license/ubuntu-font-licence-1.0.txt similarity index 100% rename from resources/captcha/fonts/license/ubuntu-font-licence-1.0.txt rename to app/application/resources/captcha/fonts/license/ubuntu-font-licence-1.0.txt diff --git a/resources/views/private/_scripts/_click-confirm.blade.php b/app/application/resources/views/private/_scripts/_click-confirm.blade.php similarity index 100% rename from resources/views/private/_scripts/_click-confirm.blade.php rename to app/application/resources/views/private/_scripts/_click-confirm.blade.php diff --git a/resources/views/private/captcha_tokens/_from.blade.php b/app/application/resources/views/private/captcha_tokens/_from.blade.php similarity index 100% rename from resources/views/private/captcha_tokens/_from.blade.php rename to app/application/resources/views/private/captcha_tokens/_from.blade.php diff --git a/resources/views/private/captcha_tokens/_top.blade.php b/app/application/resources/views/private/captcha_tokens/_top.blade.php similarity index 100% rename from resources/views/private/captcha_tokens/_top.blade.php rename to app/application/resources/views/private/captcha_tokens/_top.blade.php diff --git a/resources/views/private/captcha_tokens/create.blade.php b/app/application/resources/views/private/captcha_tokens/create.blade.php similarity index 100% rename from resources/views/private/captcha_tokens/create.blade.php rename to app/application/resources/views/private/captcha_tokens/create.blade.php diff --git a/resources/views/private/captcha_tokens/edit.blade.php b/app/application/resources/views/private/captcha_tokens/edit.blade.php similarity index 100% rename from resources/views/private/captcha_tokens/edit.blade.php rename to app/application/resources/views/private/captcha_tokens/edit.blade.php diff --git a/resources/views/private/captcha_tokens/index.blade.php b/app/application/resources/views/private/captcha_tokens/index.blade.php similarity index 100% rename from resources/views/private/captcha_tokens/index.blade.php rename to app/application/resources/views/private/captcha_tokens/index.blade.php diff --git a/resources/views/private/components/forms/checkbox.blade.php b/app/application/resources/views/private/components/forms/checkbox.blade.php similarity index 100% rename from resources/views/private/components/forms/checkbox.blade.php rename to app/application/resources/views/private/components/forms/checkbox.blade.php diff --git a/resources/views/private/components/forms/input.blade.php b/app/application/resources/views/private/components/forms/input.blade.php similarity index 100% rename from resources/views/private/components/forms/input.blade.php rename to app/application/resources/views/private/components/forms/input.blade.php diff --git a/resources/views/private/components/forms/multi_checkbox.blade.php b/app/application/resources/views/private/components/forms/multi_checkbox.blade.php similarity index 100% rename from resources/views/private/components/forms/multi_checkbox.blade.php rename to app/application/resources/views/private/components/forms/multi_checkbox.blade.php diff --git a/resources/views/private/components/forms/permissions_for_role.blade.php b/app/application/resources/views/private/components/forms/permissions_for_role.blade.php similarity index 100% rename from resources/views/private/components/forms/permissions_for_role.blade.php rename to app/application/resources/views/private/components/forms/permissions_for_role.blade.php diff --git a/resources/views/private/components/forms/select.blade.php b/app/application/resources/views/private/components/forms/select.blade.php similarity index 100% rename from resources/views/private/components/forms/select.blade.php rename to app/application/resources/views/private/components/forms/select.blade.php diff --git a/resources/views/private/dashboard/index.blade.php b/app/application/resources/views/private/dashboard/index.blade.php similarity index 100% rename from resources/views/private/dashboard/index.blade.php rename to app/application/resources/views/private/dashboard/index.blade.php diff --git a/resources/views/private/layout/_errors.blade.php b/app/application/resources/views/private/layout/_errors.blade.php similarity index 100% rename from resources/views/private/layout/_errors.blade.php rename to app/application/resources/views/private/layout/_errors.blade.php diff --git a/resources/views/private/layout/_navigation.blade.php b/app/application/resources/views/private/layout/_navigation.blade.php similarity index 100% rename from resources/views/private/layout/_navigation.blade.php rename to app/application/resources/views/private/layout/_navigation.blade.php diff --git a/resources/views/private/layout/_success.blade.php b/app/application/resources/views/private/layout/_success.blade.php similarity index 100% rename from resources/views/private/layout/_success.blade.php rename to app/application/resources/views/private/layout/_success.blade.php diff --git a/resources/views/private/layout/app.blade.php b/app/application/resources/views/private/layout/app.blade.php similarity index 100% rename from resources/views/private/layout/app.blade.php rename to app/application/resources/views/private/layout/app.blade.php diff --git a/resources/views/private/profile/profile.blade.php b/app/application/resources/views/private/profile/profile.blade.php similarity index 100% rename from resources/views/private/profile/profile.blade.php rename to app/application/resources/views/private/profile/profile.blade.php diff --git a/resources/views/private/profile/settings.blade.php b/app/application/resources/views/private/profile/settings.blade.php similarity index 100% rename from resources/views/private/profile/settings.blade.php rename to app/application/resources/views/private/profile/settings.blade.php diff --git a/resources/views/private/roles/_from.blade.php b/app/application/resources/views/private/roles/_from.blade.php similarity index 100% rename from resources/views/private/roles/_from.blade.php rename to app/application/resources/views/private/roles/_from.blade.php diff --git a/resources/views/private/roles/_top.blade.php b/app/application/resources/views/private/roles/_top.blade.php similarity index 100% rename from resources/views/private/roles/_top.blade.php rename to app/application/resources/views/private/roles/_top.blade.php diff --git a/resources/views/private/roles/create.blade.php b/app/application/resources/views/private/roles/create.blade.php similarity index 100% rename from resources/views/private/roles/create.blade.php rename to app/application/resources/views/private/roles/create.blade.php diff --git a/resources/views/private/roles/edit.blade.php b/app/application/resources/views/private/roles/edit.blade.php similarity index 100% rename from resources/views/private/roles/edit.blade.php rename to app/application/resources/views/private/roles/edit.blade.php diff --git a/resources/views/private/roles/index.blade.php b/app/application/resources/views/private/roles/index.blade.php similarity index 100% rename from resources/views/private/roles/index.blade.php rename to app/application/resources/views/private/roles/index.blade.php diff --git a/resources/views/private/users/_from.blade.php b/app/application/resources/views/private/users/_from.blade.php similarity index 100% rename from resources/views/private/users/_from.blade.php rename to app/application/resources/views/private/users/_from.blade.php diff --git a/resources/views/private/users/_top.blade.php b/app/application/resources/views/private/users/_top.blade.php similarity index 100% rename from resources/views/private/users/_top.blade.php rename to app/application/resources/views/private/users/_top.blade.php diff --git a/resources/views/private/users/create.blade.php b/app/application/resources/views/private/users/create.blade.php similarity index 100% rename from resources/views/private/users/create.blade.php rename to app/application/resources/views/private/users/create.blade.php diff --git a/resources/views/private/users/edit.blade.php b/app/application/resources/views/private/users/edit.blade.php similarity index 100% rename from resources/views/private/users/edit.blade.php rename to app/application/resources/views/private/users/edit.blade.php diff --git a/resources/views/private/users/index.blade.php b/app/application/resources/views/private/users/index.blade.php similarity index 100% rename from resources/views/private/users/index.blade.php rename to app/application/resources/views/private/users/index.blade.php diff --git a/resources/views/public/layout/app.blade.php b/app/application/resources/views/public/layout/app.blade.php similarity index 100% rename from resources/views/public/layout/app.blade.php rename to app/application/resources/views/public/layout/app.blade.php diff --git a/resources/views/public/login.blade.php b/app/application/resources/views/public/login.blade.php similarity index 100% rename from resources/views/public/login.blade.php rename to app/application/resources/views/public/login.blade.php diff --git a/resources/volt/LICENSE.md b/app/application/resources/volt/LICENSE.md similarity index 100% rename from resources/volt/LICENSE.md rename to app/application/resources/volt/LICENSE.md diff --git a/resources/volt/images/brand/dark.png b/app/application/resources/volt/images/brand/dark.png similarity index 100% rename from resources/volt/images/brand/dark.png rename to app/application/resources/volt/images/brand/dark.png diff --git a/resources/volt/images/brand/light.png b/app/application/resources/volt/images/brand/light.png similarity index 100% rename from resources/volt/images/brand/light.png rename to app/application/resources/volt/images/brand/light.png diff --git a/resources/volt/images/illustrations/signin.svg b/app/application/resources/volt/images/illustrations/signin.svg similarity index 100% rename from resources/volt/images/illustrations/signin.svg rename to app/application/resources/volt/images/illustrations/signin.svg diff --git a/resources/volt/js/app.js b/app/application/resources/volt/js/app.js similarity index 100% rename from resources/volt/js/app.js rename to app/application/resources/volt/js/app.js diff --git a/resources/volt/js/bootstrap.js b/app/application/resources/volt/js/bootstrap.js similarity index 100% rename from resources/volt/js/bootstrap.js rename to app/application/resources/volt/js/bootstrap.js diff --git a/resources/volt/js/volt.js b/app/application/resources/volt/js/volt.js similarity index 100% rename from resources/volt/js/volt.js rename to app/application/resources/volt/js/volt.js diff --git a/resources/volt/scss/_variables.scss b/app/application/resources/volt/scss/_variables.scss similarity index 100% rename from resources/volt/scss/_variables.scss rename to app/application/resources/volt/scss/_variables.scss diff --git a/resources/volt/scss/app.scss b/app/application/resources/volt/scss/app.scss similarity index 100% rename from resources/volt/scss/app.scss rename to app/application/resources/volt/scss/app.scss diff --git a/resources/volt/scss/volt/_components.scss b/app/application/resources/volt/scss/volt/_components.scss similarity index 100% rename from resources/volt/scss/volt/_components.scss rename to app/application/resources/volt/scss/volt/_components.scss diff --git a/resources/volt/scss/volt/_forms.scss b/app/application/resources/volt/scss/volt/_forms.scss similarity index 100% rename from resources/volt/scss/volt/_forms.scss rename to app/application/resources/volt/scss/volt/_forms.scss diff --git a/resources/volt/scss/volt/_functions.scss b/app/application/resources/volt/scss/volt/_functions.scss similarity index 100% rename from resources/volt/scss/volt/_functions.scss rename to app/application/resources/volt/scss/volt/_functions.scss diff --git a/resources/volt/scss/volt/_layout.scss b/app/application/resources/volt/scss/volt/_layout.scss similarity index 100% rename from resources/volt/scss/volt/_layout.scss rename to app/application/resources/volt/scss/volt/_layout.scss diff --git a/resources/volt/scss/volt/_mixins.scss b/app/application/resources/volt/scss/volt/_mixins.scss similarity index 100% rename from resources/volt/scss/volt/_mixins.scss rename to app/application/resources/volt/scss/volt/_mixins.scss diff --git a/resources/volt/scss/volt/_utilities.scss b/app/application/resources/volt/scss/volt/_utilities.scss similarity index 100% rename from resources/volt/scss/volt/_utilities.scss rename to app/application/resources/volt/scss/volt/_utilities.scss diff --git a/resources/volt/scss/volt/_variables.scss b/app/application/resources/volt/scss/volt/_variables.scss similarity index 100% rename from resources/volt/scss/volt/_variables.scss rename to app/application/resources/volt/scss/volt/_variables.scss diff --git a/resources/volt/scss/volt/_vendor.scss b/app/application/resources/volt/scss/volt/_vendor.scss similarity index 100% rename from resources/volt/scss/volt/_vendor.scss rename to app/application/resources/volt/scss/volt/_vendor.scss diff --git a/resources/volt/scss/volt/components/_accordions.scss b/app/application/resources/volt/scss/volt/components/_accordions.scss similarity index 100% rename from resources/volt/scss/volt/components/_accordions.scss rename to app/application/resources/volt/scss/volt/components/_accordions.scss diff --git a/resources/volt/scss/volt/components/_alerts.scss b/app/application/resources/volt/scss/volt/components/_alerts.scss similarity index 100% rename from resources/volt/scss/volt/components/_alerts.scss rename to app/application/resources/volt/scss/volt/components/_alerts.scss diff --git a/resources/volt/scss/volt/components/_animations.scss b/app/application/resources/volt/scss/volt/components/_animations.scss similarity index 100% rename from resources/volt/scss/volt/components/_animations.scss rename to app/application/resources/volt/scss/volt/components/_animations.scss diff --git a/resources/volt/scss/volt/components/_avatars.scss b/app/application/resources/volt/scss/volt/components/_avatars.scss similarity index 100% rename from resources/volt/scss/volt/components/_avatars.scss rename to app/application/resources/volt/scss/volt/components/_avatars.scss diff --git a/resources/volt/scss/volt/components/_badge.scss b/app/application/resources/volt/scss/volt/components/_badge.scss similarity index 100% rename from resources/volt/scss/volt/components/_badge.scss rename to app/application/resources/volt/scss/volt/components/_badge.scss diff --git a/resources/volt/scss/volt/components/_body.scss b/app/application/resources/volt/scss/volt/components/_body.scss similarity index 100% rename from resources/volt/scss/volt/components/_body.scss rename to app/application/resources/volt/scss/volt/components/_body.scss diff --git a/resources/volt/scss/volt/components/_breadcrumb.scss b/app/application/resources/volt/scss/volt/components/_breadcrumb.scss similarity index 100% rename from resources/volt/scss/volt/components/_breadcrumb.scss rename to app/application/resources/volt/scss/volt/components/_breadcrumb.scss diff --git a/resources/volt/scss/volt/components/_buttons.scss b/app/application/resources/volt/scss/volt/components/_buttons.scss similarity index 100% rename from resources/volt/scss/volt/components/_buttons.scss rename to app/application/resources/volt/scss/volt/components/_buttons.scss diff --git a/resources/volt/scss/volt/components/_card.scss b/app/application/resources/volt/scss/volt/components/_card.scss similarity index 100% rename from resources/volt/scss/volt/components/_card.scss rename to app/application/resources/volt/scss/volt/components/_card.scss diff --git a/resources/volt/scss/volt/components/_carousel.scss b/app/application/resources/volt/scss/volt/components/_carousel.scss similarity index 100% rename from resources/volt/scss/volt/components/_carousel.scss rename to app/application/resources/volt/scss/volt/components/_carousel.scss diff --git a/resources/volt/scss/volt/components/_charts.scss b/app/application/resources/volt/scss/volt/components/_charts.scss similarity index 100% rename from resources/volt/scss/volt/components/_charts.scss rename to app/application/resources/volt/scss/volt/components/_charts.scss diff --git a/resources/volt/scss/volt/components/_close.scss b/app/application/resources/volt/scss/volt/components/_close.scss similarity index 100% rename from resources/volt/scss/volt/components/_close.scss rename to app/application/resources/volt/scss/volt/components/_close.scss diff --git a/resources/volt/scss/volt/components/_custom-forms.scss b/app/application/resources/volt/scss/volt/components/_custom-forms.scss similarity index 100% rename from resources/volt/scss/volt/components/_custom-forms.scss rename to app/application/resources/volt/scss/volt/components/_custom-forms.scss diff --git a/resources/volt/scss/volt/components/_datepicker.scss b/app/application/resources/volt/scss/volt/components/_datepicker.scss similarity index 100% rename from resources/volt/scss/volt/components/_datepicker.scss rename to app/application/resources/volt/scss/volt/components/_datepicker.scss diff --git a/resources/volt/scss/volt/components/_dropdown.scss b/app/application/resources/volt/scss/volt/components/_dropdown.scss similarity index 100% rename from resources/volt/scss/volt/components/_dropdown.scss rename to app/application/resources/volt/scss/volt/components/_dropdown.scss diff --git a/resources/volt/scss/volt/components/_icons.scss b/app/application/resources/volt/scss/volt/components/_icons.scss similarity index 100% rename from resources/volt/scss/volt/components/_icons.scss rename to app/application/resources/volt/scss/volt/components/_icons.scss diff --git a/resources/volt/scss/volt/components/_images.scss b/app/application/resources/volt/scss/volt/components/_images.scss similarity index 100% rename from resources/volt/scss/volt/components/_images.scss rename to app/application/resources/volt/scss/volt/components/_images.scss diff --git a/resources/volt/scss/volt/components/_list-group.scss b/app/application/resources/volt/scss/volt/components/_list-group.scss similarity index 100% rename from resources/volt/scss/volt/components/_list-group.scss rename to app/application/resources/volt/scss/volt/components/_list-group.scss diff --git a/resources/volt/scss/volt/components/_modal.scss b/app/application/resources/volt/scss/volt/components/_modal.scss similarity index 100% rename from resources/volt/scss/volt/components/_modal.scss rename to app/application/resources/volt/scss/volt/components/_modal.scss diff --git a/resources/volt/scss/volt/components/_nav.scss b/app/application/resources/volt/scss/volt/components/_nav.scss similarity index 100% rename from resources/volt/scss/volt/components/_nav.scss rename to app/application/resources/volt/scss/volt/components/_nav.scss diff --git a/resources/volt/scss/volt/components/_pagination.scss b/app/application/resources/volt/scss/volt/components/_pagination.scss similarity index 100% rename from resources/volt/scss/volt/components/_pagination.scss rename to app/application/resources/volt/scss/volt/components/_pagination.scss diff --git a/resources/volt/scss/volt/components/_popover.scss b/app/application/resources/volt/scss/volt/components/_popover.scss similarity index 100% rename from resources/volt/scss/volt/components/_popover.scss rename to app/application/resources/volt/scss/volt/components/_popover.scss diff --git a/resources/volt/scss/volt/components/_progress.scss b/app/application/resources/volt/scss/volt/components/_progress.scss similarity index 100% rename from resources/volt/scss/volt/components/_progress.scss rename to app/application/resources/volt/scss/volt/components/_progress.scss diff --git a/resources/volt/scss/volt/components/_scrollbar.scss b/app/application/resources/volt/scss/volt/components/_scrollbar.scss similarity index 100% rename from resources/volt/scss/volt/components/_scrollbar.scss rename to app/application/resources/volt/scss/volt/components/_scrollbar.scss diff --git a/resources/volt/scss/volt/components/_shapes.scss b/app/application/resources/volt/scss/volt/components/_shapes.scss similarity index 100% rename from resources/volt/scss/volt/components/_shapes.scss rename to app/application/resources/volt/scss/volt/components/_shapes.scss diff --git a/resources/volt/scss/volt/components/_steps.scss b/app/application/resources/volt/scss/volt/components/_steps.scss similarity index 100% rename from resources/volt/scss/volt/components/_steps.scss rename to app/application/resources/volt/scss/volt/components/_steps.scss diff --git a/resources/volt/scss/volt/components/_tables.scss b/app/application/resources/volt/scss/volt/components/_tables.scss similarity index 100% rename from resources/volt/scss/volt/components/_tables.scss rename to app/application/resources/volt/scss/volt/components/_tables.scss diff --git a/resources/volt/scss/volt/components/_timelines.scss b/app/application/resources/volt/scss/volt/components/_timelines.scss similarity index 100% rename from resources/volt/scss/volt/components/_timelines.scss rename to app/application/resources/volt/scss/volt/components/_timelines.scss diff --git a/resources/volt/scss/volt/components/_tooltip.scss b/app/application/resources/volt/scss/volt/components/_tooltip.scss similarity index 100% rename from resources/volt/scss/volt/components/_tooltip.scss rename to app/application/resources/volt/scss/volt/components/_tooltip.scss diff --git a/resources/volt/scss/volt/components/_type.scss b/app/application/resources/volt/scss/volt/components/_type.scss similarity index 100% rename from resources/volt/scss/volt/components/_type.scss rename to app/application/resources/volt/scss/volt/components/_type.scss diff --git a/resources/volt/scss/volt/forms/_form-check.scss b/app/application/resources/volt/scss/volt/forms/_form-check.scss similarity index 100% rename from resources/volt/scss/volt/forms/_form-check.scss rename to app/application/resources/volt/scss/volt/forms/_form-check.scss diff --git a/resources/volt/scss/volt/forms/_form-control.scss b/app/application/resources/volt/scss/volt/forms/_form-control.scss similarity index 100% rename from resources/volt/scss/volt/forms/_form-control.scss rename to app/application/resources/volt/scss/volt/forms/_form-control.scss diff --git a/resources/volt/scss/volt/forms/_form-select.scss b/app/application/resources/volt/scss/volt/forms/_form-select.scss similarity index 100% rename from resources/volt/scss/volt/forms/_form-select.scss rename to app/application/resources/volt/scss/volt/forms/_form-select.scss diff --git a/resources/volt/scss/volt/forms/_input-group.scss b/app/application/resources/volt/scss/volt/forms/_input-group.scss similarity index 100% rename from resources/volt/scss/volt/forms/_input-group.scss rename to app/application/resources/volt/scss/volt/forms/_input-group.scss diff --git a/resources/volt/scss/volt/layout/_footer.scss b/app/application/resources/volt/scss/volt/layout/_footer.scss similarity index 100% rename from resources/volt/scss/volt/layout/_footer.scss rename to app/application/resources/volt/scss/volt/layout/_footer.scss diff --git a/resources/volt/scss/volt/layout/_navbar.scss b/app/application/resources/volt/scss/volt/layout/_navbar.scss similarity index 100% rename from resources/volt/scss/volt/layout/_navbar.scss rename to app/application/resources/volt/scss/volt/layout/_navbar.scss diff --git a/resources/volt/scss/volt/layout/_section.scss b/app/application/resources/volt/scss/volt/layout/_section.scss similarity index 100% rename from resources/volt/scss/volt/layout/_section.scss rename to app/application/resources/volt/scss/volt/layout/_section.scss diff --git a/resources/volt/scss/volt/layout/_sidebar.scss b/app/application/resources/volt/scss/volt/layout/_sidebar.scss similarity index 100% rename from resources/volt/scss/volt/layout/_sidebar.scss rename to app/application/resources/volt/scss/volt/layout/_sidebar.scss diff --git a/resources/volt/scss/volt/layout/_sidenav.scss b/app/application/resources/volt/scss/volt/layout/_sidenav.scss similarity index 100% rename from resources/volt/scss/volt/layout/_sidenav.scss rename to app/application/resources/volt/scss/volt/layout/_sidenav.scss diff --git a/resources/volt/scss/volt/mixins/_animations.scss b/app/application/resources/volt/scss/volt/mixins/_animations.scss similarity index 100% rename from resources/volt/scss/volt/mixins/_animations.scss rename to app/application/resources/volt/scss/volt/mixins/_animations.scss diff --git a/resources/volt/scss/volt/mixins/_background-variant.scss b/app/application/resources/volt/scss/volt/mixins/_background-variant.scss similarity index 100% rename from resources/volt/scss/volt/mixins/_background-variant.scss rename to app/application/resources/volt/scss/volt/mixins/_background-variant.scss diff --git a/resources/volt/scss/volt/mixins/_icon.scss b/app/application/resources/volt/scss/volt/mixins/_icon.scss similarity index 100% rename from resources/volt/scss/volt/mixins/_icon.scss rename to app/application/resources/volt/scss/volt/mixins/_icon.scss diff --git a/resources/volt/scss/volt/mixins/_modals.scss b/app/application/resources/volt/scss/volt/mixins/_modals.scss similarity index 100% rename from resources/volt/scss/volt/mixins/_modals.scss rename to app/application/resources/volt/scss/volt/mixins/_modals.scss diff --git a/resources/volt/scss/volt/mixins/_popover.scss b/app/application/resources/volt/scss/volt/mixins/_popover.scss similarity index 100% rename from resources/volt/scss/volt/mixins/_popover.scss rename to app/application/resources/volt/scss/volt/mixins/_popover.scss diff --git a/resources/volt/scss/volt/mixins/_transform.scss b/app/application/resources/volt/scss/volt/mixins/_transform.scss similarity index 100% rename from resources/volt/scss/volt/mixins/_transform.scss rename to app/application/resources/volt/scss/volt/mixins/_transform.scss diff --git a/resources/volt/scss/volt/mixins/_utilities.scss b/app/application/resources/volt/scss/volt/mixins/_utilities.scss similarity index 100% rename from resources/volt/scss/volt/mixins/_utilities.scss rename to app/application/resources/volt/scss/volt/mixins/_utilities.scss diff --git a/routes/api-v1.php b/app/application/routes/api-v1.php similarity index 100% rename from routes/api-v1.php rename to app/application/routes/api-v1.php diff --git a/routes/channels.php b/app/application/routes/channels.php similarity index 100% rename from routes/channels.php rename to app/application/routes/channels.php diff --git a/routes/console.php b/app/application/routes/console.php similarity index 100% rename from routes/console.php rename to app/application/routes/console.php diff --git a/routes/web.php b/app/application/routes/web.php similarity index 100% rename from routes/web.php rename to app/application/routes/web.php diff --git a/storage/app/.gitignore b/app/application/storage/app/.gitignore old mode 100644 new mode 100755 similarity index 100% rename from storage/app/.gitignore rename to app/application/storage/app/.gitignore diff --git a/storage/app/public/.gitignore b/app/application/storage/app/public/.gitignore old mode 100644 new mode 100755 similarity index 100% rename from storage/app/public/.gitignore rename to app/application/storage/app/public/.gitignore diff --git a/storage/framework/.gitignore b/app/application/storage/framework/.gitignore old mode 100644 new mode 100755 similarity index 100% rename from storage/framework/.gitignore rename to app/application/storage/framework/.gitignore diff --git a/storage/framework/cache/.gitignore b/app/application/storage/framework/cache/.gitignore old mode 100644 new mode 100755 similarity index 100% rename from storage/framework/cache/.gitignore rename to app/application/storage/framework/cache/.gitignore diff --git a/storage/framework/cache/data/.gitignore b/app/application/storage/framework/cache/data/.gitignore old mode 100644 new mode 100755 similarity index 100% rename from storage/framework/cache/data/.gitignore rename to app/application/storage/framework/cache/data/.gitignore diff --git a/storage/framework/sessions/.gitignore b/app/application/storage/framework/sessions/.gitignore old mode 100644 new mode 100755 similarity index 100% rename from storage/framework/sessions/.gitignore rename to app/application/storage/framework/sessions/.gitignore diff --git a/storage/framework/testing/.gitignore b/app/application/storage/framework/testing/.gitignore old mode 100644 new mode 100755 similarity index 100% rename from storage/framework/testing/.gitignore rename to app/application/storage/framework/testing/.gitignore diff --git a/storage/framework/views/.gitignore b/app/application/storage/framework/views/.gitignore old mode 100644 new mode 100755 similarity index 100% rename from storage/framework/views/.gitignore rename to app/application/storage/framework/views/.gitignore diff --git a/storage/logs/.gitignore b/app/application/storage/logs/.gitignore old mode 100644 new mode 100755 similarity index 100% rename from storage/logs/.gitignore rename to app/application/storage/logs/.gitignore diff --git a/tests/CreatesApplication.php b/app/application/tests/CreatesApplication.php similarity index 100% rename from tests/CreatesApplication.php rename to app/application/tests/CreatesApplication.php diff --git a/tests/Feature/ExampleTest.php b/app/application/tests/Feature/ExampleTest.php similarity index 100% rename from tests/Feature/ExampleTest.php rename to app/application/tests/Feature/ExampleTest.php diff --git a/tests/TestCase.php b/app/application/tests/TestCase.php similarity index 100% rename from tests/TestCase.php rename to app/application/tests/TestCase.php diff --git a/tests/Unit/ExampleTest.php b/app/application/tests/Unit/ExampleTest.php similarity index 100% rename from tests/Unit/ExampleTest.php rename to app/application/tests/Unit/ExampleTest.php diff --git a/vite.config.js b/app/application/vite.config.js similarity index 100% rename from vite.config.js rename to app/application/vite.config.js diff --git a/app/docker/.dockerignore b/app/docker/.dockerignore new file mode 100644 index 0000000..c286cf9 --- /dev/null +++ b/app/docker/.dockerignore @@ -0,0 +1,8 @@ +**/*.env +**/*.env.example +application/bootstrap/cache/* +application/storage/** +application/vendor/** +application/node_modules/** +application/public/build/** +application/public/storage diff --git a/docker/app/Dockerfile b/app/docker/Dockerfile similarity index 72% rename from docker/app/Dockerfile rename to app/docker/Dockerfile index 7ce2f40..04d1c80 100644 --- a/docker/app/Dockerfile +++ b/app/docker/Dockerfile @@ -17,8 +17,7 @@ FROM docker.io/php:8.2-zts-alpine3.18 as BUILD COPY --from=UNIT_BUILDER /var/sbin/unitd /usr/sbin/unitd COPY --from=UNIT_BUILDER /var/lib/unit/ /var/lib/unit/ -COPY docker-entrypoint.sh /home/unit/docker-entrypoint.sh -COPY unit-config.json /docker-entrypoint.d/config.json +COPY docker/unit-config.json /docker-entrypoint.d/config.json RUN apk --no-cache add pcre2 libbz2 libpng libwebp libjpeg-turbo icu-libs freetype oniguruma libzip \ && apk add --no-cache --virtual .phpize-deps icu-dev libpng-dev bzip2-dev libwebp-dev libjpeg-turbo-dev freetype-dev oniguruma-dev libzip-dev pcre2-dev ${PHPIZE_DEPS} \ @@ -47,25 +46,29 @@ RUN apk --no-cache add pcre2 libbz2 libpng libwebp libjpeg-turbo icu-libs freety && mkdir -p /tmp/php/session \ && chown -R www-data:www-data /tmp/php \ && ln -sf /dev/stdout /var/log/unit.log \ - && addgroup -S unit && adduser -S unit -G unit \ - && chmod 755 /home/unit/docker-entrypoint.sh + && addgroup -S unit && adduser -S unit -G unit FROM BUILD as APP_BUILD_FOR_PRODUCTION WORKDIR /home/app + +COPY application /home/app + RUN apk --no-cache add git nodejs npm \ && curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \ - && git clone https://git.kor-elf.net/kor-elf/service-captcha.git . \ && composer install --optimize-autoloader --no-dev \ && npm install && npm run build \ - && rm -rf /home/app/node_modules /home/app/.git /home/app/docker + && rm -rf /home/app/node_modules /home/app/.env + -# FROM BUILD AS PRODUCTION COPY --from=APP_BUILD_FOR_PRODUCTION /home/app /var/www/html +COPY docker/docker-entrypoint_prod.sh /home/unit/docker-entrypoint.sh WORKDIR /var/www/html +RUN chmod 755 /home/unit/docker-entrypoint.sh + STOPSIGNAL SIGTERM ENTRYPOINT ["/home/unit/docker-entrypoint.sh"] @@ -73,15 +76,43 @@ EXPOSE 9000 CMD ["unitd", "--no-daemon", "--control", "unix:/var/run/control.unit.sock", "--user", "unit", "--group", "unit"] -# FROM BUILD AS DEVELOP WORKDIR /var/www/html +COPY docker/docker-entrypoint_dev.sh /home/unit/docker-entrypoint.sh + STOPSIGNAL SIGTERM -RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer +RUN chmod 755 /home/unit/docker-entrypoint.sh \ + && apk --no-cache add git nodejs npm \ + && curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer ENTRYPOINT ["/home/unit/docker-entrypoint.sh"] + EXPOSE 9000 CMD ["unitd", "--no-daemon", "--control", "unix:/var/run/control.unit.sock", "--user", "unit", "--group", "unit"] + + + +FROM BUILD AS ARTISAN +WORKDIR /var/www/html +STOPSIGNAL SIGTERM +ENTRYPOINT ["php", "/var/www/html/artisan"] + + +FROM BUILD AS COMPOSER +WORKDIR /var/www/html +STOPSIGNAL SIGTERM +RUN apk --no-cache add git \ + && curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer +ENTRYPOINT ["composer"] + + + +FROM BUILD AS NPM +RUN mkdir "/.npm" && chmod -R 0777 "/.npm" +WORKDIR /var/www/html +STOPSIGNAL SIGTERM +RUN apk --no-cache add nodejs npm +ENTRYPOINT ["npm"] diff --git a/app/docker/docker-entrypoint_dev.sh b/app/docker/docker-entrypoint_dev.sh new file mode 100644 index 0000000..a885fa2 --- /dev/null +++ b/app/docker/docker-entrypoint_dev.sh @@ -0,0 +1,103 @@ +#!/bin/sh + +set -euo pipefail + +WAITLOOPS=5 +SLEEPSEC=1 +unitd="unitd" + +curl_put() +{ + RET=$(/usr/bin/curl -s -w '%{http_code}' -X PUT --data-binary @$1 --unix-socket /var/run/control.unit.sock http://localhost/$2) + RET_BODY=$(echo $RET | /bin/sed '$ s/...$//') + RET_STATUS=$(echo $RET | /usr/bin/tail -c 4) + if [ "$RET_STATUS" -ne "200" ]; then + echo "$0: Error: HTTP response status code is '$RET_STATUS'" + echo "$RET_BODY" + return 1 + else + echo "$0: OK: HTTP response status code is '$RET_STATUS'" + echo "$RET_BODY" + fi + return 0 +} + +if [ "$unitd" = "unitd" ] || [ "$unitd" = "unitd-debug" ]; then + echo "$0: Launching Unit daemon to perform initial configuration..." + /usr/sbin/$unitd --control unix:/var/run/control.unit.sock + for i in $(/usr/bin/seq $WAITLOOPS); do + if [ ! -S /var/run/control.unit.sock ]; then + echo "$0: Waiting for control socket to be created..." + /bin/sleep $SLEEPSEC + else + break + fi + done + + # even when the control socket exists, it does not mean unit has finished initialisation + # this curl call will get a reply once unit is fully launched + /usr/bin/curl -s -X GET --unix-socket /var/run/control.unit.sock http://localhost/ + + if /usr/bin/find "/docker-entrypoint.d/" -mindepth 1 -print -quit 2>/dev/null | /bin/grep -q .; then + echo "$0: /docker-entrypoint.d/ is not empty, applying initial configuration..." + + echo "$0: Looking for certificate bundles in /docker-entrypoint.d/..." + for f in $(/usr/bin/find /docker-entrypoint.d/ -type f -name "*.pem"); do + echo "$0: Uploading certificates bundle: $f" + curl_put $f "certificates/$(basename $f .pem)" + done + + echo "$0: Looking for JavaScript modules in /docker-entrypoint.d/..." + for f in $(/usr/bin/find /docker-entrypoint.d/ -type f -name "*.js"); do + echo "$0: Uploading JavaScript module: $f" + curl_put $f "js_modules/$(basename $f .js)" + done + + echo "$0: Looking for configuration snippets in /docker-entrypoint.d/..." + for f in $(/usr/bin/find /docker-entrypoint.d/ -type f -name "*.json"); do + echo "$0: Applying configuration $f"; + curl_put $f "config" + done + + if [ ! -z ${UNIT_SOURCE+x} ] + then + echo "[${UNIT_SOURCE}]" > /docker-entrypoint.d/unit_source.json + curl_put "/docker-entrypoint.d/unit_source.json" "config/listeners/*:9000/forwarded/source" + fi + + echo "$0: Looking for shell scripts in /docker-entrypoint.d/..." + for f in $(/usr/bin/find /docker-entrypoint.d/ -type f -name "*.sh"); do + echo "$0: Launching $f"; + "$f" + done + + # warn on filetypes we don't know what to do with + for f in $(/usr/bin/find /docker-entrypoint.d/ -type f -not -name "*.sh" -not -name "*.json" -not -name "*.pem" -not -name "*.js"); do + echo "$0: Ignoring $f"; + done + fi + + echo "$0: Stopping Unit daemon after initial configuration..." + kill -TERM $(/bin/cat /var/run/unit.pid) + + for i in $(/usr/bin/seq $WAITLOOPS); do + if [ -S /var/run/control.unit.sock ]; then + echo "$0: Waiting for control socket to be removed..." + /bin/sleep $SLEEPSEC + else + break + fi + done + if [ -S /var/run/control.unit.sock ]; then + kill -KILL $(/bin/cat /var/run/unit.pid) + rm -f /var/run/control.unit.sock + fi + + echo + echo "$0: Unit initial configuration complete; ready for start up..." + echo +fi + +chmod -R 777 /var/www/html/storage /var/www/html/bootstrap/cache + +exec "$@" diff --git a/docker/app/docker-entrypoint.sh b/app/docker/docker-entrypoint_prod.sh similarity index 100% rename from docker/app/docker-entrypoint.sh rename to app/docker/docker-entrypoint_prod.sh diff --git a/docker/app/unit-config.json b/app/docker/unit-config.json similarity index 100% rename from docker/app/unit-config.json rename to app/docker/unit-config.json diff --git a/db/.gitignore b/db/.gitignore new file mode 100644 index 0000000..adbb97d --- /dev/null +++ b/db/.gitignore @@ -0,0 +1 @@ +data/ \ No newline at end of file diff --git a/docker-compose-prod.yml b/docker-compose-prod.yml index 4e28f7c..7814104 100644 --- a/docker-compose-prod.yml +++ b/docker-compose-prod.yml @@ -2,33 +2,31 @@ version: '3.7' services: nginx: build: - context: ./docker/nginx + context: ./nginx dockerfile: Dockerfile + # restart: always depends_on: - app - swagger ports: - - ${DOCKER_CAPTCHA_NGINX_PORT}:80 + - ${DOCKER_NGINX_PORT}:80 app: - depends_on: - - redis build: - context: ./docker/app - dockerfile: Dockerfile + context: app + dockerfile: docker/Dockerfile target: PRODUCTION -# restart: always - cap_drop: - - ALL - cap_add: - - SETGID - - SETUID - - CHOWN - - FOWNER - ports: - - "9000" - env_file: .env - volumes: - - /etc/localtime:/etc/localtime:ro + # restart: always +# cap_drop: +# - ALL +# cap_add: +# - SETGID +# - SETUID +# - CHOWN +# - FOWNER + depends_on: + - db + - redis + env_file: app/application/.env swagger: image: swaggerapi/swagger-ui depends_on: @@ -36,7 +34,18 @@ services: environment: URLS: "[ { url: '/swagger.json', name: '/swagger.json' } ]" BASE_URL: /api-docs - ports: - - "8080" redis: image: redis:3.0-alpine + db: + image: docker.io/mysql:8.0.33 + command: --default-authentication-plugin=mysql_native_password + #restart: always + ports: + - ${DOCKER_DB_PORT}:3306 + environment: + MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} + MYSQL_DATABASE: ${DB_DATABASE} + MYSQL_USER: ${DB_USERNAME} + MYSQL_PASSWORD: ${DB_PASSWORD} + volumes: + - ./db/data:/var/lib/mysql diff --git a/docker-compose-prod_docker-hub.yml b/docker-compose-prod_docker-hub.yml new file mode 100644 index 0000000..0524d65 --- /dev/null +++ b/docker-compose-prod_docker-hub.yml @@ -0,0 +1,43 @@ +version: '3.7' +services: + nginx: + build: + context: ./nginx + dockerfile: Dockerfile + # restart: always + depends_on: + - app + - swagger + ports: + - ${DOCKER_NGINX_PORT}:80 + app: + image: korelf/service-captcha:0.7.1 + # restart: always + depends_on: + - db + - redis + env_file: app/.env + redis: + image: redis:3.0-alpine + # restart: always + swagger: + image: swaggerapi/swagger-ui + depends_on: + - app + environment: + URLS: "[ { url: '/swagger.json', name: '/swagger.json' } ]" + BASE_URL: /api-docs + + db: + image: docker.io/mysql:8.0.33 + command: --default-authentication-plugin=mysql_native_password + #restart: always + ports: + - ${DOCKER_DB_PORT}:3306 + environment: + MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} + MYSQL_DATABASE: ${DB_DATABASE} + MYSQL_USER: ${DB_USERNAME} + MYSQL_PASSWORD: ${DB_PASSWORD} + volumes: + - ./db/data:/var/lib/mysql diff --git a/docker-compose.yml b/docker-compose.yml index af15a79..ca45a50 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,35 +1,27 @@ -version: '3' +version: '3.7' services: web: - image: docker.angie.software/angie + image: nginx:alpine3.18-slim volumes: - - ./docker/dev/angie/config/default.conf:/etc/angie/http.d/default.conf - - ./:/var/www/html + - ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf ports: - - ${DOCKER_ANGIE_PORT}:80 - #restart: always + - ${DOCKER_NGINX_PORT}:80 depends_on: - db - redis - app app: - image: service-captcha-laravel - container_name: service-captcha-laravel-www - build: ./docker/dev/php - #restart: always - user: 1000:1000 + build: + context: app + dockerfile: docker/Dockerfile + target: DEVELOP volumes: - - ./docker/dev/php/config/php.ini:/usr/local/etc/php/conf.d/php.ini - - ./docker/dev/php/config/xdebug.ini:/usr/local/etc/php/conf.d/xdebug.ini - - ./:/var/www/html - expose: - - "9000" + - ./app/application:/var/www/html redis: image: redis:3.0-alpine db: image: mysql:8.0.33 command: --default-authentication-plugin=mysql_native_password - #restart: always ports: - ${DOCKER_DB_PORT}:3306 environment: @@ -38,17 +30,36 @@ services: MYSQL_USER: ${DB_USERNAME} MYSQL_PASSWORD: ${DB_PASSWORD} volumes: - - ./docker/dev/db:/var/lib/mysql - - ./docker/dev/my.cnf:/etc/mysql/conf.d/my.cnf + - ./db/data:/var/lib/mysql swagger: image: swaggerapi/swagger-ui environment: URLS: "[ { url: '/swagger.json', name: '/swagger.json' } ]" BASE_URL: /api-docs - ports: - - "8080" - adminer: - image: adminer - #restart: always - ports: - - ${DOCKER_ADMINER_PORT}:8080 + + artisan: + build: + context: app + dockerfile: docker/Dockerfile + target: ARTISAN + user: "${UID}:${GID}" + volumes: + - ./app/application:/var/www/html + + composer: + build: + context: app + dockerfile: docker/Dockerfile + target: COMPOSER + user: "${UID}:${GID}" + volumes: + - ./app/application:/var/www/html + + npm: + build: + context: app + dockerfile: docker/Dockerfile + target: NPM + user: "${UID}:${GID}" + volumes: + - ./app/application:/var/www/html diff --git a/docker/dev/.gitignore b/docker/dev/.gitignore deleted file mode 100644 index 2f526f2..0000000 --- a/docker/dev/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -db/* -!db/.gitignore diff --git a/docker/dev/angie/config/default.conf b/docker/dev/angie/config/default.conf deleted file mode 100644 index 3063a8a..0000000 --- a/docker/dev/angie/config/default.conf +++ /dev/null @@ -1,44 +0,0 @@ -server { - listen 80 default_server; - listen [::]:80 default_server; - server_name localhost; - - client_max_body_size 1024M; - - root /var/www/html/public; - - location / { - location /api-docs { - proxy_pass http://swagger:8080; - proxy_set_header Host $host; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Real-IP $remote_addr; - } - location / { - # try to serve file directly, fallback to index.php - try_files $uri /index.php$is_args$args; - } - } - - location ~ ^/index\.php(/|$) { - fastcgi_pass app:9000; - fastcgi_split_path_info ^(.+\.php)(/.*)$; - include fastcgi_params; - - fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; - fastcgi_param DOCUMENT_ROOT $realpath_root; - # Prevents URIs that include the front controller. This will 404: - # http://domain.tld/index.php/some-path - # Remove the internal directive to allow URIs like this - internal; - } - - # return 404 for all other php files not matching the front controller - # this prevents access to other php files you don't want to be accessible. - location ~ \.php$ { - return 404; - } - - error_log /var/log/angie/project_error.log; - access_log /var/log/angie/project_access.log; -} diff --git a/docker/dev/my.cnf b/docker/dev/my.cnf deleted file mode 100644 index c56e049..0000000 --- a/docker/dev/my.cnf +++ /dev/null @@ -1,9 +0,0 @@ -[mysqld] -innodb_lru_scan_depth=100 # from 1024 to conserve 90% CPU cycles used for function -innodb_io_capacity=1900 # from 200 to allow more IOPSecond to your storage device -innodb_flush_neighbors=2 # from 0 to expedite writing to current extent -innodb_max_dirty_pages_pct_lwm=1 # from 10 percent to expedite writes -innodb_max_dirty_pages_pct=1 # from 90 percent to reduce innodb_buffer_pool_pages_dirty count -innodb_change_buffer_max_size=50 # from 25 percent to expedite your high volume activity -innodb_flush_log_at_trx_commit=0 -skip_log_bin=1 diff --git a/docker/dev/php/Dockerfile b/docker/dev/php/Dockerfile deleted file mode 100644 index f30b0b2..0000000 --- a/docker/dev/php/Dockerfile +++ /dev/null @@ -1,85 +0,0 @@ -FROM php:8.2-fpm - -# Set working directory -WORKDIR /var/www/html - -# Install dependencies -RUN apt-get update \ - && apt-get install -y \ - apt-utils \ - man \ - curl \ - git \ - bash \ - vim \ - zip unzip \ - acl \ - iproute2 \ - dnsutils \ - fonts-freefont-ttf \ - fontconfig \ - dbus \ - openssh-client \ - sendmail \ - libfreetype6-dev \ - libjpeg62-turbo-dev \ - icu-devtools \ - libicu-dev \ - libmcrypt4 \ - libmcrypt-dev \ - libpng-dev \ - zlib1g-dev \ - libxml2-dev \ - libzip-dev \ - libonig-dev \ - graphviz \ - libcurl4-openssl-dev \ - pkg-config \ - libldap2-dev \ - libpq-dev \ - libbz2-dev \ - libwebp-dev - -RUN curl -sL https://deb.nodesource.com/setup_20.x | bash - -RUN apt-get -y install nodejs - -# Clear cache -RUN apt-get clean && rm -rf /var/lib/apt/lists/* - -# Install extensions -RUN docker-php-ext-configure intl --enable-intl && \ - docker-php-ext-configure bcmath --enable-bcmath && \ - docker-php-ext-configure gd --with-freetype --with-jpeg --with-webp && \ - docker-php-ext-install -j$(nproc) gd && \ - docker-php-ext-install bcmath &&\ - docker-php-ext-install pdo \ - pgsql pdo_pgsql \ - mysqli pdo_mysql \ - intl iconv mbstring \ - zip pcntl \ - exif opcache bz2 \ - calendar \ - && pecl install -o -f redis \ - && rm -rf /tmp/pear \ - && docker-php-ext-enable redis \ - && docker-php-source delete - -# Install composer -RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer - -# Add user for laravel application -RUN groupadd -g 1000 www -RUN useradd -u 1000 -ms /bin/bash -g www www - -# Copy existing application directory contents -#COPY . /var/www - -# Copy existing application directory permissions -#COPY --chown=www:www . /var/www - -# Change current user to www -USER www - -COPY start.sh /usr/local/bin/start - -CMD ["/usr/local/bin/start"] diff --git a/docker/dev/php/config/php.ini b/docker/dev/php/config/php.ini deleted file mode 100644 index d528b29..0000000 --- a/docker/dev/php/config/php.ini +++ /dev/null @@ -1,8 +0,0 @@ -date.timezone = Asia/Almaty - -display_errors = 1 -error_reporting = E_ALL -post_max_size = 1024m -upload_max_filesize = 1024m -memory_limit = 512M - diff --git a/docker/dev/php/config/xdebug.ini b/docker/dev/php/config/xdebug.ini deleted file mode 100644 index 9013d57..0000000 --- a/docker/dev/php/config/xdebug.ini +++ /dev/null @@ -1,4 +0,0 @@ -xdebug.remote_enable = 1 -xdebug.remote_autostart = 1 -xdebug.remote_connect_back = 1 -xdebug.remote_idekey = PHPSTORM \ No newline at end of file diff --git a/docker/dev/php/start.sh b/docker/dev/php/start.sh deleted file mode 100755 index 91c0f3e..0000000 --- a/docker/dev/php/start.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash -set -e -role=${CONTAINER_ROLE:-app} -if [ "$role" = "app" ]; then - exec php-fpm -elif [ "$role" = "queue" ]; then - echo "Running the queue..." -# php /var/www/html/artisan queue:work --verbose --sleep=5 --tries=10 --max-time=3600 - php /var/www/html/artisan queue:work --verbose --sleep=5 --tries=10 -elif [ "$role" = "websockets" ]; then - echo "Running the websockets..." - php /var/www/html/artisan websockets:serve -elif [ "$role" = "scheduler" ]; then - while [ true ] - do - php /var/www/html/artisan schedule:run --verbose --no-interaction & - sleep 60 - done -else - echo "Could not match the container role \"$role\"" - exit 1 -fi diff --git a/docker/nginx/Dockerfile b/nginx/Dockerfile similarity index 100% rename from docker/nginx/Dockerfile rename to nginx/Dockerfile diff --git a/docker/nginx/nginx.conf b/nginx/nginx.conf similarity index 100% rename from docker/nginx/nginx.conf rename to nginx/nginx.conf