LaravelPublisher v.0.0.2 補上清紀錄 20250610
This commit is contained in:
parent
795cc86bae
commit
2a950fcdec
@ -1,19 +1,19 @@
|
|||||||
FROM php:8.3-fpm
|
FROM php:8.3-fpm
|
||||||
|
|
||||||
# ---- system & PHP extensions -------------------------------------------------
|
# ---- system & PHP extensions -------------------------------------------------
|
||||||
RUN apt-get update && apt-get install -y \
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
nginx \
|
nginx \
|
||||||
gettext \
|
gettext \
|
||||||
|
logrotate \
|
||||||
git unzip zip curl ca-certificates supervisor cron nano \
|
git unzip zip curl ca-certificates supervisor cron nano \
|
||||||
libpng-dev libjpeg62-turbo-dev libfreetype6-dev \
|
libpng-dev libjpeg62-turbo-dev libfreetype6-dev \
|
||||||
libonig-dev libxml2-dev libzip-dev libpq-dev libicu-dev libxslt-dev \
|
libonig-dev libxml2-dev libzip-dev libpq-dev libicu-dev libxslt-dev \
|
||||||
libsqlite3-dev sqlite3 default-mysql-client \
|
libsqlite3-dev sqlite3 default-mysql-client \
|
||||||
&& curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \
|
&& curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \
|
||||||
&& apt-get install -y nodejs \
|
&& apt-get install -y --no-install-recommends nodejs \
|
||||||
&& npm install -g npm \
|
&& npm install -g npm \
|
||||||
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
|
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
|
||||||
&& docker-php-ext-install -j$(nproc) gd pdo_mysql zip bcmath intl xsl pcntl sockets \
|
&& docker-php-ext-install -j$(nproc) gd pdo_mysql zip bcmath intl xsl pcntl sockets opcache\
|
||||||
&& docker-php-ext-install opcache \
|
|
||||||
&& pecl install redis && docker-php-ext-enable redis \
|
&& pecl install redis && docker-php-ext-enable redis \
|
||||||
&& apt-get clean && rm -rf /var/lib/apt/lists/*
|
&& apt-get clean && rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
@ -27,6 +27,7 @@ COPY docker/supervisord.conf /etc/supervisor/conf.d/supervisord.conf
|
|||||||
COPY docker/entrypoint.sh /entrypoint.sh
|
COPY docker/entrypoint.sh /entrypoint.sh
|
||||||
COPY docker/entrypoint.git.sh /entrypoint.git.sh
|
COPY docker/entrypoint.git.sh /entrypoint.git.sh
|
||||||
COPY docker/nginx/default.conf.template /etc/nginx/templates/default.conf.template
|
COPY docker/nginx/default.conf.template /etc/nginx/templates/default.conf.template
|
||||||
|
COPY docker/logrotate/laravel /etc/logrotate.d/app/laravel.conf
|
||||||
|
|
||||||
WORKDIR /var/www
|
WORKDIR /var/www
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@ services:
|
|||||||
container_name: ${APP_NAME}_db
|
container_name: ${APP_NAME}_db
|
||||||
restart: always
|
restart: always
|
||||||
environment:
|
environment:
|
||||||
MYSQL_ROOT_PASSWORD: root
|
MYSQL_ROOT_PASSWORD: ${DB_PASSWORD}
|
||||||
MYSQL_DATABASE: ${DB_DATABASE}
|
MYSQL_DATABASE: ${DB_DATABASE}
|
||||||
MYSQL_USER: ${DB_USERNAME}
|
MYSQL_USER: ${DB_USERNAME}
|
||||||
MYSQL_PASSWORD: ${DB_PASSWORD}
|
MYSQL_PASSWORD: ${DB_PASSWORD}
|
||||||
@ -26,9 +26,7 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- ./data/html:/var/www/html
|
- ./data/html:/var/www/html
|
||||||
- ./data/logs/php:/var/www/logs
|
- ./data/logs/php:/var/www/logs
|
||||||
- ./data/nginx/conf.d/:/etc/nginx/conf.d/
|
|
||||||
- ./data/logs/nginx/:/var/log/nginx
|
- ./data/logs/nginx/:/var/log/nginx
|
||||||
- ./docker/nginx/default.conf.template:/etc/nginx/templates/default.conf.template
|
|
||||||
ports:
|
ports:
|
||||||
- "${APP_PORT:-80}:${APP_PORT:-80}"
|
- "${APP_PORT:-80}:${APP_PORT:-80}"
|
||||||
depends_on:
|
depends_on:
|
||||||
|
@ -42,3 +42,9 @@ supervisord -c /etc/supervisor/conf.d/supervisord.conf &
|
|||||||
php-fpm -D
|
php-fpm -D
|
||||||
envsubst '${NGINX_HOST} ${NGINX_PORT}' < /etc/nginx/templates/default.conf.template > /etc/nginx/conf.d/default.conf
|
envsubst '${NGINX_HOST} ${NGINX_PORT}' < /etc/nginx/templates/default.conf.template > /etc/nginx/conf.d/default.conf
|
||||||
exec nginx -g "daemon off;"
|
exec nginx -g "daemon off;"
|
||||||
|
|
||||||
|
echo "0 0 * * * root /usr/sbin/logrotate /etc/logrotate.d/app" > /etc/cron.d/logrotate-Laravel
|
||||||
|
chmod 0644 /etc/cron.d/logrotate-Laravel
|
||||||
|
crontab /etc/cron.d/logrotate-Laravel
|
||||||
|
echo "[entrypoint] Testing logrotate config..."
|
||||||
|
logrotate --debug /etc/logrotate.d/app/laravel.conf
|
23
docker/logrotate/laravel
Normal file
23
docker/logrotate/laravel
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
/var/log/nginx/*.log {
|
||||||
|
daily
|
||||||
|
missingok
|
||||||
|
rotate 7
|
||||||
|
compress
|
||||||
|
delaycompress
|
||||||
|
notifempty
|
||||||
|
create 0640 www-data www-data
|
||||||
|
sharedscripts
|
||||||
|
postrotate
|
||||||
|
pkill -HUP nginx
|
||||||
|
endscript
|
||||||
|
}
|
||||||
|
|
||||||
|
/var/www/logs/*.log {
|
||||||
|
daily
|
||||||
|
missingok
|
||||||
|
rotate 7
|
||||||
|
compress
|
||||||
|
delaycompress
|
||||||
|
notifempty
|
||||||
|
create 0640 www-data www-data
|
||||||
|
}
|
@ -28,3 +28,8 @@ autorestart=true
|
|||||||
stdout_logfile=/var/www/logs/git-worker.log
|
stdout_logfile=/var/www/logs/git-worker.log
|
||||||
stderr_logfile=/var/www/logs/git-worker_error.log
|
stderr_logfile=/var/www/logs/git-worker_error.log
|
||||||
startsecs=0
|
startsecs=0
|
||||||
|
|
||||||
|
[program:cron]
|
||||||
|
command=/usr/sbin/cron -f
|
||||||
|
autostart=true
|
||||||
|
autorestart=true
|
2
開發紀錄.txt
2
開發紀錄.txt
@ -11,7 +11,7 @@ docker ps
|
|||||||
|
|
||||||
docker logs ktvcentral_app
|
docker logs ktvcentral_app
|
||||||
|
|
||||||
docker exec -it ktvcentral_nginx sh
|
docker exec -it ktvcentral_app bash -c "cd /var/www/html && php artisan migrate:fresh --seed"
|
||||||
|
|
||||||
docker exec -it ktvcentral_app php artisan migrate
|
docker exec -it ktvcentral_app php artisan migrate
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user