Skip to content

Commit

Permalink
Add Redis support
Browse files Browse the repository at this point in the history
  • Loading branch information
flavioheleno committed Mar 20, 2022
1 parent 55963cd commit c690d57
Show file tree
Hide file tree
Showing 6 changed files with 42 additions and 18 deletions.
7 changes: 7 additions & 0 deletions .env.dist
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,15 @@ POSTGRES_USER=
POSTGRES_PASSWORD=
POSTGRES_DB=
POSTGRES_HOST=
POSTGRES_PORT=

AMQP_USER=
AMQP_PASS=
AMQP_HOST=
AMQP_PORT=

REDIS_HOST=
REDIS_PORT=

PHP_ENV=
DOCKER=
7 changes: 5 additions & 2 deletions app/dependencies.php
Original file line number Diff line number Diff line change
Expand Up @@ -59,11 +59,14 @@

if ($settings->has('cache.redis')) {
$dsn = parse_url($settings->getString('cache.redis'));

$drivers[] = new Redis(
[
'servers' => [
'server' => $dsn['host'] ?? 'localhost',
'port' => $dsn['port'] ?? 6379
[
'server' => $dsn['host'] ?? 'localhost',
'port' => $dsn['port'] ?? 6379
]
]
]
);
Expand Down
7 changes: 5 additions & 2 deletions app/settings.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,14 @@
SettingsInterface::class => function () {
return new Settings(
[
'cache' => [
'redis' => "redis://${_ENV['REDIS_HOST']}:${_ENV['REDIS_PORT']}"
],
'db' => [
'dsn' => "pgsql://${_ENV['POSTGRES_USER']}:${_ENV['POSTGRES_PASSWORD']}@${_ENV['POSTGRES_HOST']}/${_ENV['POSTGRES_DB']}"
'dsn' => "pgsql://${_ENV['POSTGRES_USER']}:${_ENV['POSTGRES_PASSWORD']}@${_ENV['POSTGRES_HOST']}:${_ENV['POSTGRES_PORT']}/${_ENV['POSTGRES_DB']}"
],
'queue' => [
'dsn' => "amqp://${_ENV['AMQP_USER']}:${_ENV['AMQP_PASS']}@${_ENV['AMQP_HOST']}"
'dsn' => "amqp://${_ENV['AMQP_USER']}:${_ENV['AMQP_PASS']}@${_ENV['AMQP_HOST']}:${_ENV['AMQP_PORT']}"
],
'displayErrorDetails' => (isset($_ENV['PHP_ENV']) === false || $_ENV['PHP_ENV'] === 'development'),
'logError' => true,
Expand Down
1 change: 1 addition & 0 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
"php": ">=8.1",
"ext-pdo": "*",
"ext-posix": "*",
"ext-redis": "*",
"badges/poser": "^2.3",
"composer/metadata-minifier": "^1.0",
"composer/semver": "^3.2",
Expand Down
5 changes: 3 additions & 2 deletions composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

33 changes: 21 additions & 12 deletions docker/php.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,7 @@ RUN apk add --no-cache $PHPIZE_DEPS curl-dev freetype-dev libjpeg-turbo-dev libp
#============================================
# Built-in Extensions
#============================================
RUN docker-php-ext-install -j$(nproc) zip && \
docker-php-ext-install -j$(nproc) pcntl && \
docker-php-ext-install -j$(nproc) sockets && \
docker-php-ext-install -j$(nproc) pdo_pgsql && \
RUN docker-php-ext-install -j$(nproc) dom && \
docker-php-ext-configure gd \
--enable-gd \
--with-freetype \
Expand All @@ -29,8 +26,11 @@ RUN docker-php-ext-install -j$(nproc) zip && \
--with-xpm && \
docker-php-ext-install -j$(nproc) gd && \
docker-php-ext-install -j$(nproc) opcache && \
docker-php-ext-install -j$(nproc) pcntl && \
docker-php-ext-install -j$(nproc) pdo_pgsql && \
docker-php-ext-install -j$(nproc) simplexml && \
docker-php-ext-install -j$(nproc) dom
docker-php-ext-install -j$(nproc) sockets && \
docker-php-ext-install -j$(nproc) zip

#============================================
# Third party Extensions
Expand All @@ -42,6 +42,13 @@ RUN docker-php-source extract && \
docker-php-ext-install -j$(nproc) amqp && \
docker-php-source delete

RUN docker-php-source extract && \
wget -O redis.tar.gz https://github.com/phpredis/phpredis/archive/refs/tags/5.3.7.tar.gz && \
mkdir /usr/src/php/ext/redis && \
tar --extract --file redis.tar.gz --directory /usr/src/php/ext/redis --strip 1 && \
docker-php-ext-install -j$(nproc) redis && \
docker-php-source delete

#============================================
# Opcache
#============================================
Expand Down Expand Up @@ -106,12 +113,13 @@ RUN apk add --no-cache libpq --repository=https://dl-cdn.alpinelinux.org/alpine/
#============================================
# CLI Extensions
#============================================
RUN docker-php-ext-enable zip && \
RUN docker-php-ext-enable amqp && \
docker-php-ext-enable opcache && \
docker-php-ext-enable pcntl && \
docker-php-ext-enable sockets && \
docker-php-ext-enable pdo_pgsql && \
docker-php-ext-enable opcache && \
docker-php-ext-enable amqp
docker-php-ext-enable redis && \
docker-php-ext-enable sockets && \
docker-php-ext-enable zip

#============================================
# Other dependencies
Expand Down Expand Up @@ -181,12 +189,13 @@ RUN wget -O /usr/local/bin/php-fpm-healthcheck https://raw.githubusercontent.com
#============================================
# FPM Extensions
#============================================
RUN docker-php-ext-enable zip && \
docker-php-ext-enable pdo_pgsql && \
RUN docker-php-ext-enable dom && \
docker-php-ext-enable gd && \
docker-php-ext-enable opcache && \
docker-php-ext-enable pdo_pgsql && \
docker-php-ext-enable redis && \
docker-php-ext-enable simplexml && \
docker-php-ext-enable dom
docker-php-ext-enable zip

#============================================
# User
Expand Down

0 comments on commit c690d57

Please sign in to comment.