我使用DDEV作为TYPO3项目的开发环境。我想让Redis服务器可用(用于缓存)。我怎样才能做到这一点?
为了让Redis可用于TYPO3,您需要:
.ddev/docker-compose.redis.yaml
:
# ddev redis recipe file
#
version: '3.6'
services:
redis:
container_name: ddev-${DDEV_SITENAME}-redis
image: redis:4
restart: always
ports:
- 6379
labels:
com.ddev.site-name: ${DDEV_SITENAME}
com.ddev.approot: $DDEV_APPROOT
com.ddev.app-url: $DDEV_URL
environment:
- VIRTUAL_HOST=$DDEV_HOSTNAME
- HTTP_EXPOSE=6379
volumes: []
web:
links:
- redis:$DDEV_HOSTNAME
php-redis
模块(对于DDEV <v1.1.0)如果您有最新的DDEV版本,则可以跳过此步骤。旧版本的DDEV泊坞窗映像(低于v1.1.0)没有安装php-redis
软件包。所以我们需要通过添加post-start
钩子手动完成。每次打电话都会执行挂钩
将以下代码放在config.yaml文件中:
hooks:
post-start:
- exec: "sudo apt-get update"
- exec: "sudo apt-get install php-redis -y"
- exec: "killall php-fpm"
- exec: "sudo apt-get install redis-tools -y"
最后一行(使用redis-tools
)是可选的。它安装了redis-cli
工具,可用于验证您是否可以连接到redis:
> ddev-start.
> ddev restart
> ddev ssh
>> redis-cli -h redis
redis:6379> select 0
OK
redis
作为主机,并使用6379
端口。仅供参考!自8月15日DDEV v1.1.0起,DDEV将PHP-Redis添加到Web容器中。
https://www.drud.com/ddev-local/ddev-v1-1-0/
“更多的服务!我们已经将PHP-Redis添加到了Web容器中。我们反复听说没有Redis是想要使用DDEV的人的主要障碍。我们希望这会有所帮助!”