mirror of
https://github.com/invoiceninja/dockerfiles.git
synced 2026-01-18 04:14:04 +01:00
Compare commits
10 Commits
5.10.55-r5
...
5.10.57-d1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
aa271a1488 | ||
|
|
451c1b872f | ||
|
|
5c74753da2 | ||
|
|
83f17aa669 | ||
|
|
394c4c8b5e | ||
|
|
9ed63a6762 | ||
|
|
cb6d6d46c2 | ||
|
|
3b0e475de6 | ||
|
|
d5bb90fa04 | ||
|
|
1b62d86659 |
14
debian/.env
vendored
14
debian/.env
vendored
@@ -8,7 +8,16 @@ PHANTOMJS_PDF_GENERATION=false
|
||||
PDF_GENERATOR=snappdf
|
||||
TRUSTED_PROXIES='*'
|
||||
|
||||
QUEUE_CONNECTION=database
|
||||
|
||||
CACHE_DRIVER=redis
|
||||
QUEUE_CONNECTION=redis
|
||||
SESSION_DRIVER=redis
|
||||
|
||||
REDIS_HOST=redis
|
||||
REDIS_PASSWORD=null
|
||||
REDIS_PORT=6379
|
||||
|
||||
FILESYSTEM_DISK=debian_docker
|
||||
|
||||
# DB connection
|
||||
DB_HOST=mysql
|
||||
@@ -49,4 +58,5 @@ NORDIGEN_SECRET_KEY=
|
||||
IS_DOCKER=true
|
||||
SCOUT_DRIVER=null
|
||||
SNAPPDF_CHROMIUM_PATH=/usr/bin/google-chrome-stable
|
||||
#SNAPPDF_CHROMIUM_PATH=/usr/bin/google-chrome
|
||||
|
||||
|
||||
|
||||
24
debian/Dockerfile
vendored
24
debian/Dockerfile
vendored
@@ -117,17 +117,9 @@ WORKDIR /var/www/html
|
||||
RUN set -eux; \
|
||||
DOWNLOAD_URL=$(curl -s "https://api.github.com/repos/invoiceninja/invoiceninja/releases/latest" | \
|
||||
grep -o '"browser_download_url": "[^"]*invoiceninja.tar"' | cut -d '"' -f 4) && \
|
||||
echo "Downloading from: $DOWNLOAD_URL" && \
|
||||
# Download and save the tar
|
||||
curl -L "$DOWNLOAD_URL" -o /tmp/ninja.tar && \
|
||||
# Try extraction
|
||||
cd /var/www/html && \
|
||||
tar -xf /tmp/ninja.tar && \
|
||||
# List what was extracted
|
||||
rm -f /tmp/ninja.tar && \
|
||||
curl -L "$DOWNLOAD_URL" | tar -xvz -C /var/www/html && \
|
||||
chown -R www-data:www-data /var/www/html
|
||||
|
||||
# After setting permissions, switch to www-data for remaining operations
|
||||
USER www-data
|
||||
|
||||
# Install dependencies
|
||||
@@ -138,7 +130,8 @@ RUN composer dump-autoload --optimize \
|
||||
&& php artisan optimize \
|
||||
&& php artisan view:cache \
|
||||
&& php artisan config:cache \
|
||||
&& php artisan route:cache
|
||||
&& php artisan route:cache \
|
||||
&& php artisan storage:link
|
||||
|
||||
USER root
|
||||
|
||||
@@ -162,27 +155,26 @@ RUN mkdir -p \
|
||||
/var/www/html/storage/framework/sessions \
|
||||
/var/www/html/storage/framework/views \
|
||||
/var/www/html/storage/logs \
|
||||
/var/www/html/public/storage \
|
||||
/var/www/html/public/uploads \
|
||||
/var/run \
|
||||
/var/log/supervisor
|
||||
|
||||
RUN cp /var/www/html/resources/views/react/index.blade.php /var/www/html/public/index.html
|
||||
|
||||
# Set permissions
|
||||
RUN chown -R www-data:www-data \
|
||||
/var/www/html/storage \
|
||||
/var/www/html/bootstrap/cache \
|
||||
/var/www/html/public/storage \
|
||||
/var/www/html/public/uploads \
|
||||
/var/run \
|
||||
/var/log/supervisor \
|
||||
&& chmod -R 775 \
|
||||
/var/www/html/public/storage \
|
||||
/var/www/html/public/uploads \
|
||||
/var/www/html/storage \
|
||||
/var/www/html/bootstrap/cache \
|
||||
/var/run \
|
||||
/var/log/supervisor
|
||||
|
||||
# Switch to www-data for runtime
|
||||
USER www-data
|
||||
|
||||
# Health check
|
||||
HEALTHCHECK --interval=30s --timeout=5s --start-period=30s --retries=3 \
|
||||
CMD php -v || exit 1
|
||||
|
||||
14
debian/docker-compose.yml
vendored
14
debian/docker-compose.yml
vendored
@@ -8,7 +8,7 @@ x-logging: &default-logging
|
||||
|
||||
services:
|
||||
app:
|
||||
image: invoiceninja/invoiceninja-debian:latest
|
||||
image: invoiceninja/invoiceninja-debian:latest
|
||||
restart: unless-stopped
|
||||
env_file:
|
||||
- ./.env
|
||||
@@ -16,8 +16,7 @@ services:
|
||||
- ./.env:/var/www/html/.env
|
||||
- app_storage:/var/www/html/storage
|
||||
- app_cache:/var/www/html/bootstrap/cache
|
||||
- public_storage:/var/www/html/public/storage
|
||||
user: www-data:www-data
|
||||
- app_files:/var/www/html
|
||||
|
||||
networks:
|
||||
- app-network
|
||||
@@ -40,8 +39,7 @@ services:
|
||||
volumes:
|
||||
- ./nginx/conf.d:/etc/nginx/conf.d:ro
|
||||
- ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
|
||||
volumes_from:
|
||||
- app
|
||||
- app_files:/var/www/html:ro
|
||||
|
||||
networks:
|
||||
- app-network
|
||||
@@ -105,9 +103,9 @@ volumes:
|
||||
driver: local
|
||||
app_cache:
|
||||
driver: local
|
||||
public_storage:
|
||||
driver: local # Persistent storage for user files
|
||||
mysql_data:
|
||||
driver: local
|
||||
redis_data:
|
||||
driver: local
|
||||
driver: local
|
||||
app_files:
|
||||
driver: local
|
||||
|
||||
2
debian/php/php-fpm.conf
vendored
2
debian/php/php-fpm.conf
vendored
@@ -3,7 +3,7 @@ user = www-data
|
||||
group = www-data
|
||||
listen = 0.0.0.0:9000
|
||||
pm = dynamic
|
||||
pm.max_children = 5
|
||||
pm.max_children = 10
|
||||
pm.start_servers = 2
|
||||
pm.min_spare_servers = 1
|
||||
pm.max_spare_servers = 3
|
||||
@@ -3,11 +3,11 @@
|
||||
php artisan db:seed --force
|
||||
|
||||
# Build up array of arguments...
|
||||
if [[ ! -z "${IN_USER_EMAIL}" ]]; then
|
||||
if [ ! -z "${IN_USER_EMAIL}" ]; then
|
||||
email="--email ${IN_USER_EMAIL}"
|
||||
fi
|
||||
|
||||
if [[ ! -z "${IN_PASSWORD}" ]]; then
|
||||
if [ ! -z "${IN_PASSWORD}" ]; then
|
||||
password="--password ${IN_PASSWORD}"
|
||||
fi
|
||||
|
||||
|
||||
14
debian/scripts/init.sh
vendored
14
debian/scripts/init.sh
vendored
@@ -36,20 +36,22 @@ mkdir -p \
|
||||
/var/www/html/storage/framework/sessions \
|
||||
/var/www/html/storage/framework/views \
|
||||
/var/www/html/storage/logs \
|
||||
/var/www/html/public/uploads
|
||||
/var/www/html/public/storage
|
||||
|
||||
# Set directory permissions without changing ownership
|
||||
chmod -R 775 \
|
||||
/var/www/html/storage \
|
||||
/var/www/html/bootstrap/cache \
|
||||
/var/www/html/public/uploads
|
||||
/var/www/html/public/storage
|
||||
|
||||
chown -R www-data:www-data /var/www/html/storage
|
||||
|
||||
# Clear and cache config in production
|
||||
if [ "$APP_ENV" = "production" ]; then
|
||||
php artisan config:cache
|
||||
php artisan optimize
|
||||
php artisan package:discover
|
||||
php artisan migrate --force
|
||||
gosu www-data php artisan config:cache
|
||||
gosu www-data php artisan optimize
|
||||
gosu www-data php artisan package:discover
|
||||
gosu www-data php artisan migrate --force
|
||||
|
||||
echo "Checking initialization status..."
|
||||
|
||||
|
||||
Reference in New Issue
Block a user