#48 - postgreSQL db

This commit is contained in:
Adrian Hopek 2022-03-03 11:28:21 +01:00
parent d825dd727f
commit 98a93cb45f
5 changed files with 34 additions and 37 deletions

View File

@ -75,9 +75,9 @@ class User extends Authenticatable
} }
return $query return $query
->where("first_name", "LIKE", "%{$text}%") ->where("first_name", "ILIKE", $text)
->orWhere("last_name", "LIKE", "%{$text}%") ->orWhere("last_name", "ILIKE", $text)
->orWhere("email", "LIKE", "%{$text}%"); ->orWhere("email", "ILIKE", $text);
} }
public function saveAvatar(string $path): void public function saveAvatar(string $path): void

View File

@ -5,24 +5,19 @@ declare(strict_types=1);
return [ return [
"default" => env("DB_CONNECTION", "mysql"), "default" => env("DB_CONNECTION", "mysql"),
"connections" => [ "connections" => [
"mysql" => [ 'pgsql' => [
"driver" => "mysql", 'driver' => 'pgsql',
"url" => env("DATABASE_URL"), 'url' => env('DATABASE_URL'),
"host" => env("DB_HOST", "127.0.0.1"), 'host' => env('DB_HOST', '127.0.0.1'),
"port" => env("DB_PORT", "3306"), 'port' => env('DB_PORT', '5432'),
"database" => env("DB_DATABASE", "forge"), 'database' => env('DB_DATABASE', 'forge'),
"username" => env("DB_USERNAME", "forge"), 'username' => env('DB_USERNAME', 'forge'),
"password" => env("DB_PASSWORD", ""), 'password' => env('DB_PASSWORD', ''),
"unix_socket" => env("DB_SOCKET", ""), 'charset' => 'utf8',
"charset" => "utf8mb4", 'prefix' => '',
"collation" => "utf8mb4_unicode_ci", 'prefix_indexes' => true,
"prefix" => "", 'search_path' => 'public',
"prefix_indexes" => true, 'sslmode' => 'prefer',
"strict" => true,
"engine" => null,
"options" => extension_loaded("pdo_mysql") ? array_filter([
PDO::MYSQL_ATTR_SSL_CA => env("MYSQL_ATTR_SSL_CA"),
]) : [],
], ],
], ],
"migrations" => "migrations", "migrations" => "migrations",

View File

@ -35,31 +35,31 @@ services:
restart: unless-stopped restart: unless-stopped
database: database:
image: mysql:8.0 image: postgres:13
container_name: toby-db-dev container_name: toby-db-dev
environment: environment:
- MYSQL_ROOT_PASSWORD=${DOCKER_DEV_DB_ROOT_PASSWORD} - PGPASSWORD=${DOCKER_DEV_DB_ROOT_PASSWORD}
- MYSQL_DATABASE=${DOCKER_DEV_DB_DATABASE} - POSTGRES_DB=${DOCKER_DEV_DB_DATABASE}
- MYSQL_USER=${DOCKER_DEV_DB_USERNAME} - POSTGRES_USER=${DOCKER_DEV_DB_USERNAME}
- MYSQL_PASSWORD=${DOCKER_DEV_DB_PASSWORD} - POSTGRES_PASSWORD=${DOCKER_DEV_DB_PASSWORD}
ports: ports:
- ${DOCKER_DEV_DB_EXTERNAL_PORT:-3306}:3306 - ${DOCKER_DEV_DB_EXTERNAL_PORT:-5432}:5432
volumes: volumes:
- toby-mysql-data:/var/lib/mysql - toby-pgsql-data:/var/lib/pgsql
networks: networks:
- toby-dev - toby-dev
restart: unless-stopped restart: unless-stopped
database-test: database-test:
image: mysql:8.0 image: postgres:13
container_name: toby-db-test container_name: toby-db-test
environment: environment:
- MYSQL_ROOT_PASSWORD=${DOCKER_TEST_DB_ROOT_PASSWORD} - PGPASSWORD=${DOCKER_TEST_DB_ROOT_PASSWORD}
- MYSQL_DATABASE=${DOCKER_TEST_DB_DATABASE} - POSTGRES_DB=${DOCKER_TEST_DB_DATABASE}
- MYSQL_USER=${DOCKER_TEST_DB_USERNAME} - POSTGRES_USER=${DOCKER_TEST_DB_USERNAME}
- MYSQL_PASSWORD=${DOCKER_TEST_DB_PASSWORD} - POSTGRES_PASSWORD=${DOCKER_TEST_DB_PASSWORD}
ports: ports:
- ${DOCKER_TEST_DB_EXTERNAL_PORT:-3307}:3306 - ${DOCKER_TEST_DB_EXTERNAL_PORT:-5433}:5432
networks: networks:
- toby-dev - toby-dev
restart: unless-stopped restart: unless-stopped
@ -97,5 +97,5 @@ networks:
driver: bridge driver: bridge
volumes: volumes:
toby-mysql-data: toby-pgsql-data:
name: toby-mysql-data name: toby-pgsql-data

View File

@ -10,10 +10,12 @@ RUN if [ ${INSTALL_XDEBUG} = true ]; then \
;fi ;fi
RUN apk --no-cache add \ RUN apk --no-cache add \
postgresql-dev \
zip \ zip \
libzip-dev \ libzip-dev \
libpng-dev \ libpng-dev \
&& docker-php-ext-install \ && docker-php-ext-install \
pdo_pgsql \
zip \ zip \
gd \ gd \
&& docker-php-ext-configure \ && docker-php-ext-configure \

View File

@ -22,7 +22,7 @@
<env name="APP_KEY" value="base64:SKEJSy9oF9chQBCMbxqgj5zhtAvug9kwZ+cDiP1Y8A8="/> <env name="APP_KEY" value="base64:SKEJSy9oF9chQBCMbxqgj5zhtAvug9kwZ+cDiP1Y8A8="/>
<env name="BCRYPT_ROUNDS" value="4"/> <env name="BCRYPT_ROUNDS" value="4"/>
<env name="CACHE_DRIVER" value="array"/> <env name="CACHE_DRIVER" value="array"/>
<env name="DB_CONNECTION" value="mysql"/> <env name="DB_CONNECTION" value="pgsql"/>
<env name="DB_HOST" value="toby-db-test"/> <env name="DB_HOST" value="toby-db-test"/>
<env name="DB_DATABASE" value="toby"/> <env name="DB_DATABASE" value="toby"/>
<env name="DB_USERNAME" value="toby"/> <env name="DB_USERNAME" value="toby"/>