Je sais qu'avec Ubuntu, vous pouvez définir les valeurs par défaut des variables d’environnement dans /etc/environment
; Je ne vois pas ce fichier dans Alpine Linux. Existe-t-il un emplacement différent pour la définition des paramètres par défaut pour l'ensemble du système?
Il semble que /etc/profile
soit le meilleur endroit où j'ai pu trouver. Au moins, certaines variables d'environnement sont définies ici:
export CHARSET=UTF-8
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
export PAGER=less
export PS1='\h:\w\$ '
umask 022
for script in /etc/profile.d/*.sh ; do
if [ -r $script ] ; then
. $script
fi
done
Selon le contenu de /etc/profile
, vous pouvez créer un fichier avec l'extension .sh
dans /etc/profile.d/
et vous devez passer --login
à chaque fois pour charger les variables d'environnement, par exemple docker exec -it container sh --login
.
Si vous parlez d'une image Alpine Docker, vous pouvez définir ces variables env dans Dockerfile comme ci-dessous. Ici, vous n'avez pas besoin de passer --login
à chaque fois. Ces variables seront automatiquement disponibles dans tout le système.
FROM Alpine
ENV GITHUB_TOKEN=XXXXXXXXXXXXXXXXXXXXXXX \
COMPOSER_HOME=/home/deploy/.composer
Vous pouvez également définir votre alias, env, etc. dans/etc/profile et définir un ENV
dans Dockerfile, comme ci-dessous, pour générer automatiquement le profil.
FROM Alpine
ENV GITHUB_TOKEN=XXXXXXXXXXXXXXXXXXXXXXX \
COMPOSER_HOME=/home/deploy/.composer \
ENV ENV="/etc/profile"