THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline


Bonsoir,

je viens de m'équiper d'une nouvelle machine plus puissante et ai donc du à cette occasion tenter de remettre l'environnement de développement que j'avais auparavant réussi à faire fonctionner (sur Docker). Voilà, je me suis arrêté à "tenter" car je n'arrive à cette heure-ci toujours pas à parvenir à un semblant de succès, bien que cela fait quelques jours que je bidouille. Je m'explique (ayant déjà des templates de développés, je me suis dit qu'une installation neuve serait relativement simple et qu'il suffirait de télécharger une distribution neuve) :

  1. Je télécharge la distribution sur thelia.net, dézippe le fichier en question et me place ensuite via ligne de commande dans le dit-dossier, que j'ai renommé selon le nom de mon projet.

  2. Docker étant bien entendu installé sur cette machine, en étant placé dans le dossier du projet, je lance via ligne de commande

    docker-compose build --no-cache
  3. Et là, surprise, voici la belle erreur que j'obtiens à la fin de l'exécution du, je suppose, Dockerfile fourni avec la distribution Thelia :

    Build complete.
    Don't forget to run 'make test'.
    
    Installing shared extensions:     /usr/local/lib/php/extensions/no-debug-non-zts-20131226/
    Installing header files:           /usr/local/include/php/
    find . -name \*.gcno -o -name \*.gcda | xargs rm -f
    find . -name \*.lo -o -name \*.o | xargs rm -f
    find . -name \*.la -o -name \*.a | xargs rm -f 
    find . -name \*.so | xargs rm -f
    find . -name .libs -a -type d|xargs rm -rf
    rm -f libphp.la       modules/* libs/*
    /usr/local/bin/docker-php-pecl-install: line 4: cd: /usr/src/php/ext: No such file or directory
    ERROR: Service 'web' failed to build: The command '/bin/sh -c apt-get update && apt-get install -y  libfreetype6-dev  libjpeg62-turbo-dev  libmcrypt-dev  libpng12-dev  libicu-dev  git  zip  libzip-dev     && docker-php-ext-install intl pdo_mysql mcrypt mbstring zip     && docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/     && docker-php-ext-install gd     && docker-php-pecl-install xdebug-2.3.3' returned a non-zero code: 1
    MacBook-Pro-de-Pierre:muktinergy pierredevaux$ 

Après quelques jours de recherches diverses et variées, et ne pouvant pas m'appuyer sur une formation solide sur les environnements de développement, je ne sais vraiment plus où chercher ni même dans quelle direction creuser.
Je ne me souviens pas dans ma précédente installation avoir rencontré cette erreur. Est-ce une issue apparue avec la dernière màj de Thelia ?

Merci d'avance à ceux qui prendront le temps de me lire et sauront m'apporter ne serait-ce que des bribes de réponses. Ne pas comprendre c'est pas cool !

++,
Pierre

Last edited by pierredevaux (16-10-2016 14:24:53)

Offline


Bonjour,

personne n'aurait vraiment une petite ou bien n'a jamais été confronté à ce problème ? C'est vraiment embêtant car j'ai réussi à approndir mes connaissances sur Thelia ces derniers mois et ai donc un semblant de plateforme ecommerce qui est fonctionnel, mais là je me retrouve coincé depuis presque 1 semaine sur un problème à mon avis purement matériel et surtout à l'étap de l'installation car je viens de changer de machine.. Si quelqu'un avait la gentillesse de m'aider, je lui en serais extrêmement reconnaissant !

Merci d'avance,
++,
Pierre

Offline


Pour installer le container, tu dois utiliser :

docker-compose up -d

Mais il subsiste un problème, dans docker-php-pecl-install. Peux-tu essayer en remplaçant le contenu de docker-php-pecl-install par :

#!/bin/bash
set -e

usage() {
    echo "usage: $0 [channel/]<package> ..."
    echo "   ie: $0 uploadprogress oauth-1.2.3"
}

if [ $# -eq 0 ]; then
    usage >&2
    exit 1
fi

pecl install "$@"

while [ $# -gt 0 ]; do
    ext="$1"
    ext=$(echo "$ext" | cut -d- -f1)
    ext=$(echo "$ext" | cut -d\/ -f2)
    shift

    for module in $(find /usr/local/lib/php/extensions -name "$ext.so"); do
        ini="/usr/local/etc/php/conf.d/docker-php-pecl-$ext.ini"
        if grep -q zend_extension_entry "$module"; then
            # https://wiki.php.net/internals/extensions#loading_zend_extensions
            line="zend_extension=$(readlink -f "$module")"
        else
            line="extension=$(basename "$module")"
        fi
        if ! grep -q "$line" "$ini" 2>/dev/null; then
            echo "$line" >> "$ini"
        fi
    done
done

rm -rf /tmp/*

(cf. https://github.com/helderco/docker-php/ … l-install)


OpenStudio Toulouse

Offline


Mille mercis à toi Roadster31,
effectivement je n'avais pas creusé dans cette direction, je viens de tester ta proposition en remplaçant le contenu du fichier docker-php-pecl-install et puis ça marche !! J'ai à nouveau un env de développement fonctionnel, me voilà soulagé sincèrement smile

Peut-être que je pourrais ouvrir une issue sur Git à ce sujet ?

Je marque en RÉSOLU.
Encore merci à toi,
++,
Pierre

Offline


J'ai fait une PR avec le nouveau fichier.


OpenStudio Toulouse

Offline


Merci pour ton aide Roadster smile