Debian 8, php 5.6 по-умолчанию, через докер ставлю версию php 7.1, вроде делал все по докам, в .bashrc прописано:
# composer
composer () {
tty=
tty -s && tty=--tty
docker run \
$tty \
--interactive \
--rm \
--user $(id -u):$(id -g) \
--volume /etc/passwd:/etc/passwd:ro \
--volume /etc/group:/etc/group:ro \
--volume $(pwd):/app \
composer "$@"
}
# php
php () {
docker run --rm -w /www -v $(pwd):/www php:7.1-cli php "$@"
}
Проблемы:
если вызывать напрямую скрипты (*.sh файлы) вида:
\#!/usr/bin/env php
то запускается версия php 5.6
Если вызывать какой файл "php -f init", то не читает "fgets(STDIN)":
$ php -v
PHP 7.1.20 (cli) (built: Jul 21 2018 08:32:31) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
$ php -f init
Yii Application Initialization Tool v1.0
Which environment do you want the application to be initialized in?
[0] Development
[1] Production
Your choice [0-1, or "q" to quit]
Quit initialization.
сразу выводит все (не ждет ответа)
деплой работает через gulp-ssh, запускается команда "composer install", но тоже не работает как будто не читает .bashrc, хотя если авторизоваться по ssh, то composer работает по bashrc (дефолтный ругается на версию php7.1)
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники