0

I have a composer.json file that should install silverstripe and some other things:

{
    "name": "silverstripe/installer",
    "type": "silverstripe-recipe",
    "description": "The SilverStripe Framework Installer",
    "repositories": [
        {
            "type": "vcs",
            "url": "https://github.com/onfire/Silverstripe-Recaptcha"
        }
    ],
    "require": {
        "php": ">=5.6.0",
        "silverstripe/recipe-plugin": "^1.2",
        "silverstripe/recipe-cms": "^4.4",
        "silverstripe-themes/simple": "~3.2.0",
        "symbiote/silverstripe-gridfieldextensions": "^3.2",
        "silverstripe/subsites": "^2",
        "silverstripe/restfulserver": "^2.1",
        "wilr/silverstripe-googlesitemaps": "^2.1",
        "undefinedoffset/silverstripe-nocaptcha": "^2.0",
        "i-lateral/silverstripe-googleshoppingfeed": "^2.0"
    },
    "require-dev": {
        "phpunit/phpunit": "^5.7"
    },
    "extra": {
        "project-files-installed": [
            "app/.htaccess",
            "app/_config.php",
            "app/_config/mysite.yml",
            "app/src/Page.php",
            "app/src/PageController.php"
        ],
        "public-files-installed": [
            ".htaccess",
            "index.php",
            "install-frameworkmissing.html",
            "install.php",
            "web.config"
        ]
    },
    "config": {
        "process-timeout": 600
    },
    "prefer-stable": true,
    "minimum-stability": "dev"
}

I'm trying to install these using this command:

docker run --rm -v $(pwd):/app composer install

The command executes but outputs:

Loading composer repositories with package information Installing dependencies (including require-dev) from lock file Your requirements could not be resolved to an installable set of packages.

Problem 1 - Installation request for silverstripe/framework 4.5.0 -> satisfiable by silverstripe/framework[4.5.0]. - silverstripe/framework 4.5.0 requires ext-intl * -> the requested PHP extension intl is missing from your system. Problem 2 - silverstripe/framework 4.5.0 requires ext-intl * -> the requested PHP extension intl is missing from your system. - wilr/silverstripe-googlesitemaps 2.1.5 requires silverstripe/framework ^4 -> satisfiable by silverstripe/framework[4.5.0]. - Installation request for wilr/silverstripe-googlesitemaps 2.1.5 -> satisfiable by wilr/silverstripe-googlesitemaps[2.1.5].

To enable extensions, verify that they are enabled in your .ini files: - /usr/local/etc/php/php-cli.ini - /usr/local/etc/php/conf.d/docker-php-ext-sodium.ini - /usr/local/etc/php/conf.d/docker-php-ext-zip.ini You can also run php --ini inside terminal to see which files are used by PHP in CLI mode.

This works well for example with Laravels composer.json file, why does it not work with this one?

Also what exactly is happening here and how do I resolve the errors? Since the command I am using is creating a temporary container is this even possible using this method?

I do not want to install composer on my system so this method is a requirement.

Daniel Tate
  • 2,075
  • 4
  • 24
  • 50
  • 2
    The error output tells us the problem: "the requested PHP extension intl is missing from your system". The intl extension needs to be installed / enabled on your system's php environment. – 3dgoo May 22 '20 at 03:18
  • 2
    Presuming you are using the php container: https://stackoverflow.com/questions/48674297/php-intl-extension-in-docker-container – Olli Tyynelä May 22 '20 at 05:49

0 Answers0