Coder Social home page Coder Social logo

Comments (12)

Wonderfall avatar Wonderfall commented on May 25, 2024 1

Entre autres il faut faire ça déjà (tu peux aussi enlever s6 et su-exec qui sont inclus dans l'image), ensuite il faut placer quelques fichiers de configuration aux bons endroits, pour ça je recommande de réunir les directives COPY en une seule qui fasse COPY rootfs /, et donc de tout mettre dans un dossier rootfs qui respecte l'arborescence depuis la racine.

  • /nginx/sites-enabled/nginx.conf : mettre le block server seulement et pas besoin d'y mettre client_max_body puisque c'est déjà dans le block http. Pour fastcgi :
fastcgi_pass unix:/php/run/php-fpm.sock
include /nginx/conf/fastcgi_params
  • Pas besoin de mettre le php-fpm.conf custom.
  • Remplacer php7 par php tout court dans les scripts.
  • Plus besoin de mettre s6.d puisque c'est déjà inclus.
  • Mettre la conf opcache dans /php/conf.d/opcache.ini.

Par contre il faut placer ça dans run.sh :

sed -i -e "s/<UPLOAD_MAX_SIZE>/$UPLOAD_MAX_SIZE/g" /nginx/conf/nginx.conf /php/etc/php-fpm.conf \
       -e "s/<MEMORY_LIMIT>/$MEMORY_LIMIT/g" /php/etc/php-fpm.conf

Donc ajouter les variables d'environnement :

  • ENV UPLOAD_MAX_SIZE=50M
  • ENV MEMORY_LIMIT= à vous de voir, dépend de la machine...

Aussi, on modifie les permissions de run.sh :

chown -R $UID:$GID /flarum /nginx /php /var/log /tmp /etc/s6.d

from docker-flarum.

hardware avatar hardware commented on May 25, 2024 1

Bon bah ça a marché en prod du premier coup, ça c'est de l'image de qualité 👍
Merci encore @Wonderfall.

@Magicalex on attend encore un peu pour être sûr qu'il y ait pas d'effet de bord puis on bascule le tag 0.1.0-beta.6-stable sur 8e427b8

from docker-flarum.

Wonderfall avatar Wonderfall commented on May 25, 2024 1

Oui j'en ferai pour les versions majeures et intermédiaires. Niveau maintenance l'image est rebuild une fois par semaine automatiquement et si jamais je suis absent et qu'il faut mettre à jour, @xataz et toi avez (depuis un moment) accès à mon repo en écriture.

from docker-flarum.

hardware avatar hardware commented on May 25, 2024

Je sais pas si c'est vraiment utile depuis qu'on bloque une version stable. En plus ça ajoute une surcouche à maintenir et à build manuellement puisque certaines extensions php requises par flarum ne sont pas dans wonderfall/nginx-php.

from docker-flarum.

Wonderfall avatar Wonderfall commented on May 25, 2024

Actuellement l'image utilise testing : https://github.com/mondediefr/docker-flarum/blob/master/Dockerfile#L10
Et c'est vraiment ce qui m'a motivé à faire cette image. Ce n'est pas du tout stable, il y a des régressions. Nginx n'est plus du tout maintenu non plus, la version stable n'est même pas mise à jour dans les dépôts d'alpine, même si on pioche dans edge (EDIT : pas de bol pour moi, ils viennent tout juste de mettre à jour le 10 mai dernier). Niveau sécu je trouve pas ça top du coup... Après j'admets que la décision est plus simple à faire pour moi.

Quelles sont ces extensions ? Voici la liste des modules présents dans nginx-php :

[PHP Modules]
Core
ctype
curl
date
dom
exif
fileinfo
filter
ftp
gd
gmp
hash
iconv
intl
json
ldap
libxml
mbstring
mcrypt
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
readline
Reflection
session
SimpleXML
SPL
sqlite3
standard
tokenizer
xml
xmlreader
xmlwriter
zip
zlib

Et opcache (Zend OPcache) qui est présent mais pas configuré de base.
J'ai fait une comparaison avec les modules présents et activés dans docker-flarum, absolument 100% des modules sont présents dans nginx-php.

from docker-flarum.

hardware avatar hardware commented on May 25, 2024

Ok pourquoi pas alors. ça change quoi au niveau de l'organisation de l'image docker ? J'ai juste à mettre FROM wonderfall/nginx-php et à supp les paquets php7* et nginx ?

from docker-flarum.

Wonderfall avatar Wonderfall commented on May 25, 2024

Voilà j'ai mis à jour les instructions pour la migration, si je vois un autre truc je mettrai à jour.

from docker-flarum.

hardware avatar hardware commented on May 25, 2024

Merci pour les instructions, ça marche bien en local. Je vais maintenant tester en prod.

from docker-flarum.

Wonderfall avatar Wonderfall commented on May 25, 2024

Cool si ça marche bien alors. 😇

from docker-flarum.

Wonderfall avatar Wonderfall commented on May 25, 2024

Par contre comme dit dans mon précédent post, plus besoin de /etc/s6.d parce que la même chose est déjà présente d'origine dans l'image : https://github.com/mondediefr/docker-flarum/tree/master/rootfs/etc/s6.d

Le but aussi c'était d'éviter au maximum la redondance.

from docker-flarum.

hardware avatar hardware commented on May 25, 2024

Effectivement, j'ai oublié ça. J'aime bien cette organisation, c'est plus propre. Tu pourras faire des tags pour les versions de php à l'occasion ? Si un jour il y a un pb de compatibilité, ça pourrait servir.

from docker-flarum.

Wonderfall avatar Wonderfall commented on May 25, 2024

J'ai mis un tag 7.1 pour PHP 7.1. D'ailleurs il y a eu une mise à jour il y a 2 jours en 7.1.5, je viens de changer le numéro de version, faudrait rebuild flarum après.
En train d'être build : https://hub.docker.com/r/wonderfall/nginx-php/builds/byzewxitlnko76vne6sou7n/

from docker-flarum.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.