add key for access laravel server.

modified readme to reflect what is needed for new users
This commit is contained in:
2025-10-30 00:43:50 -07:00
parent 7b546df1bb
commit f8f6c2c112
7 changed files with 42 additions and 10 deletions

View File

@@ -4,9 +4,11 @@ FROM php:8.3-apache
RUN apt-get update && apt-get install -y \ RUN apt-get update && apt-get install -y \
libpq-dev \ libpq-dev \
curl \ curl \
git \
libzip-dev \
&& curl -fsSL https://deb.nodesource.com/setup_lts.x | bash - \ && curl -fsSL https://deb.nodesource.com/setup_lts.x | bash - \
&& apt-get install -y nodejs \ && apt-get install -y nodejs \
&& docker-php-ext-install pdo pdo_pgsql pcntl && docker-php-ext-install pdo pdo_pgsql pcntl zip
# Enable Apache mod_rewrite # Enable Apache mod_rewrite
RUN a2enmod rewrite RUN a2enmod rewrite
@@ -14,5 +16,15 @@ RUN a2enmod rewrite
# Set working directory # Set working directory
WORKDIR /var/www/html WORKDIR /var/www/html
# Copy only package files, install node deps (faster caches)
COPY package*.json ./
RUN npm ci --unsafe-perm
# Make git accept repo path (prevents dubious ownership)
RUN git config --global --add safe.directory /var/www/html
# Now copy app code
COPY . .
# Install composer # Install composer
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer COPY --from=composer:latest /usr/bin/composer /usr/bin/composer

View File

@@ -34,6 +34,26 @@ Apply all migrations to the database:
php artisan migrate php artisan migrate
``` ```
### 3. Generate key
Your .env should look something like this prior to running the command:
```
DB_CONNECTION=pgsql
DB_HOST=db
DB_PORT=5432
DB_DATABASE=laravel
DB_USERNAME=laravel
DB_PASSWORD=secret
APP_KEY=
```
Generate Artisan key necessary for accessing endpoint:
```bash
exec laravel php artisan key:generate
```
**Note:** this step has to be redone every time a new database migration is written. **Note:** this step has to be redone every time a new database migration is written.
## Development ## Development

View File

@@ -66,7 +66,7 @@
], ],
"post-create-project-cmd": [ "post-create-project-cmd": [
"@php artisan key:generate --ansi", "@php artisan key:generate --ansi",
"@php -r \"file_exists('database/database.sqlite') || touch('database/database.sqlite');\"", "@php -r \"file_exists('database/database.pgsql') || touch('database/database.pgsql');\"",
"@php artisan migrate --graceful --ansi" "@php artisan migrate --graceful --ansi"
], ],
"pre-package-uninstall": [ "pre-package-uninstall": [

View File

@@ -16,7 +16,7 @@ return [
| |
*/ */
'default' => env('DB_CONNECTION', 'sqlite'), 'default' => env('DB_CONNECTION', 'pgsql'),
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
@@ -31,10 +31,10 @@ return [
'connections' => [ 'connections' => [
'sqlite' => [ 'pgsql' => [
'driver' => 'sqlite', 'driver' => 'pgsql',
'url' => env('DB_URL'), 'url' => env('DB_URL'),
'database' => env('DB_DATABASE', database_path('database.sqlite')), 'database' => env('DB_DATABASE', database_path('database.pgsql')),
'prefix' => '', 'prefix' => '',
'foreign_key_constraints' => env('DB_FOREIGN_KEYS', true), 'foreign_key_constraints' => env('DB_FOREIGN_KEYS', true),
'busy_timeout' => null, 'busy_timeout' => null,

View File

@@ -99,7 +99,7 @@ return [
*/ */
'batching' => [ 'batching' => [
'database' => env('DB_CONNECTION', 'sqlite'), 'database' => env('DB_CONNECTION', 'pgsql'),
'table' => 'job_batches', 'table' => 'job_batches',
], ],
@@ -118,7 +118,7 @@ return [
'failed' => [ 'failed' => [
'driver' => env('QUEUE_FAILED_DRIVER', 'database-uuids'), 'driver' => env('QUEUE_FAILED_DRIVER', 'database-uuids'),
'database' => env('DB_CONNECTION', 'sqlite'), 'database' => env('DB_CONNECTION', 'pgsql'),
'table' => 'failed_jobs', 'table' => 'failed_jobs',
], ],

2
database/.gitignore vendored
View File

@@ -1 +1 @@
*.sqlite* *.pgsql*

View File

@@ -23,7 +23,7 @@
<env name="BCRYPT_ROUNDS" value="4"/> <env name="BCRYPT_ROUNDS" value="4"/>
<env name="BROADCAST_CONNECTION" value="null"/> <env name="BROADCAST_CONNECTION" value="null"/>
<env name="CACHE_STORE" value="array"/> <env name="CACHE_STORE" value="array"/>
<env name="DB_CONNECTION" value="sqlite"/> <env name="DB_CONNECTION" value="pgsql"/>
<env name="DB_DATABASE" value=":memory:"/> <env name="DB_DATABASE" value=":memory:"/>
<env name="MAIL_MAILER" value="array"/> <env name="MAIL_MAILER" value="array"/>
<env name="QUEUE_CONNECTION" value="sync"/> <env name="QUEUE_CONNECTION" value="sync"/>