Apache2 возвращает ошибку «APACHE_RUN_DIR» в контейнере докеров

Если вы используете ZSH, взгляните на небольшой плагин, который я недавно написал для этого:

https://github.com/ericfreese/zsh-cwd-history

Он хранит отдельный HISTFILE для каждого каталога, в котором вы выполняли команды, и добавляет chpwd для переключения между HISTFILEми при смене каталогов.

Он также предоставляет виджет zle, который можно привязать к нажатию клавиши, чтобы переключать HISTFILE между вашим первоначальным "глобальным" HISTFILE и HISTFILE для вашего текущего рабочего каталога.

Первоначально он был основан на плагине Jim Hester's per-directory-history, но затем был переписан с нуля, чтобы исправить многие проблемы этого плагина.

1
16.04.2019, 14:49
1 ответ
  • Удалить переменные Apache из файла докера
  • Заменитьinit.sh:

    #!/bin/bash
    
    # define path to custom docker environment
    DOCKER_ENVVARS=/etc/apache2/docker_envvars
    
    # write variables to DOCKER_ENVVARS
    cat << EOF > "$DOCKER_ENVVARS"
    export APACHE_RUN_USER=www-data
    export APACHE_RUN_GROUP=www-data
    export APACHE_LOG_DIR=/var/log/apache2
    export APACHE_LOCK_DIR=/var/lock/apache2
    export APACHE_PID_FILE=/var/run/apache2.pid
    export APACHE_RUN_DIR=/var/run/apache2
    EOF
    
    # source environment variables to get APACHE_PID_FILE
    . "$DOCKER_ENVVARS"
    
    # only delete pidfile if APACHE_PID_FILE is defined
    if [ -n "$APACHE_PID_FILE" ]; then
       rm -f "$APACHE_PID_FILE"
    fi
    
    # start other services
    service exim4 start
    service dovecot start
    service fetchmail start
    
    # line copied from /etc/init.d/apache2
    ENV="env -i LANG=C PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
    
    # use apache2ctl instead of /usr/sbin/apache2
    $ENV APACHE_ENVVARS="$DOCKER_ENVVARS" apache2ctl -DFOREGROUND
    
0
28.01.2020, 00:14

Теги

Похожие вопросы