完全にオフラインの環境でWebサイトを開発しています。また、Laravelオフライン環境でGitlab-runnerとの継続的な統合(CentOS 7)
CentOSの7.私はCIのためのgitlabランナーを使用して、ホストがある問題がgitlabランナーがlaravelを実行するためapache
ユーザーを使用していますlaravelアプリケーションとApacheを展開するためのCentOS上でgitlab-runner
ユーザーを使用していることです。 ファイルの所有権を変更するまで、私はPermission denied
エラーが発生しました。その後私は、Apacheのログに、このエラーを取得する:
Uncaught UnexpectedValueException: The stream or file "storage/logs/laravel.log" could not be opened: failed to open stream: Permission denied
monolog
のようないくつかのベンダー・ライブラリがstorage/logs/laravel.log
にエラーまたはデバッグログを書きたいようだが、それは許可拒否取得します。 :(
.gitlab-ci.yml
stages:
- build
- test
- deploy
buildBash:
stage: build
script:
- bash build.sh
testBash:
stage: test
script:
- bash test.sh
deployBash:
stage: deploy
script:
- sudo bash deploy.sh
build.sh
#!/bin/bash
set -xe
# creating env file from production file
cp .env.production .env
# initializing laravel
php artisan key:generate
php artisan config:cache
# database migration
php artisan migrate --force
deploy.sh
#!/bin/bash
PWD=$(pwd)'/public'
STG=$(pwd)'/storage'
ln -s $PWD /var/www/html/public
chown apache.apache -R /var/www/html/public
chmod -R 755 /var/www/html/public
chmod -R 775 $STG
私はgitlabの実行を使用しています正しい?パーミッション拒否エラーを修正するにはどうすればよいですか?