A forma mais segura atualmente de executar o Redis no CasaOS é como um contentor Docker com um volume de dados persistente e autenticação/exposição de rede explícitas. O tutorial do fórum de 2023 é demasiado antigo para ser utilizado como guia de implementação completo, porque as predefinições atuais do Redis e as expectativas de segurança evoluíram.
Comece pela imagem oficial do Redis, mantenha a porta 6379 privada para a LAN ou para a rede Docker, preserve /data e decida se precisa de persistência AOF/RDB antes de armazenar dados da aplicação.
Utilizar a imagem oficial do Redis
O guia Docker do Redis atual documenta a imagem oficial redis:<version> e a porta padrão 6379.
Utilizar o Docker Compose no CasaOS
services:
redis:
image: redis:8
container_name: redis
restart: unless-stopped
command: ["redis-server", "--appendonly", "yes", "--requirepass", "CHANGE_ME"]
volumes:
- /DATA/AppData/redis/data:/data
ports:
- "127.0.0.1:6379:6379"
Altere a palavra-passe e ajuste o endereço de ligação apenas se outro anfitrião precisar realmente de acesso direto ao Redis.
Persistir /data
Sem um volume no anfitrião, os dados do Redis ficam na camada descartável do contentor e podem desaparecer quando o contentor for recriado. Mapeie /data para armazenamento persistente do CasaOS.
Escolher a persistência deliberadamente
O AOF regista as operações de escrita e melhora a capacidade de recuperação, enquanto os instantâneos RDB consomem menos recursos. A sua aplicação também pode aceitar o Redis como cache efémera. Adeque o modo de persistência à função que o Redis desempenha.
Não expor o Redis diretamente à Internet
A porta 6379 não deve ser reencaminhada publicamente. Se outra aplicação for executada no mesmo anfitrião Docker, coloque ambos os contentores numa rede Docker privada e ligue-se através do nome do serviço.
Utilizar autenticação e ACLs
Um único requirepass é simples para utilização doméstica, enquanto o Redis atual também suporta ACLs para utilizadores e comandos mais granulares. Não deixe uma instância Redis acessível remotamente sem autenticação.
Testar com o redis-cli
docker exec -it redis redis-cli -a CHANGE_ME ping
Um servidor em bom estado deve devolver PONG.
Efetuar cópias de segurança dos dados persistentes do Redis
Se o Redis contiver algo importante, pare as escritas ou coordene-as e faça uma cópia de segurança do volume persistente de acordo com o método RDB/AOF escolhido. Não parta do princípio de que reiniciar o contentor equivale a fazer uma cópia de segurança.
O guia de implementação do Docker aplica-se igualmente às aplicações personalizadas do CasaOS.
Verificar os limites de memória antes de utilizar em produção
O Redis é um software centrado na memória. Monitorize o tamanho real do conjunto de dados e a RAM do anfitrião, em vez de presumir que um número reduzido de chaves implica uma utilização reduzida de recursos. Num anfitrião CasaOS partilhado, considere uma política maxmemory definida deliberadamente, mas apenas depois de compreender como a sua aplicação reage à expulsão de dados.
Utilizar uma rede Docker privada para as dependências da aplicação
Se o Redis existir apenas para outro contentor, como uma plataforma de automatização ou uma aplicação Web, coloque ambos os serviços na mesma rede Docker privada e omita totalmente a porta do anfitrião. A aplicação pode ligar-se a redis:6379 através do nome do serviço.
Verificar a persistência depois de recriar um contentor
Depois da configuração inicial, escreva uma chave de teste, recrie o contentor com o mesmo volume e confirme que a chave continua disponível. Este teste simples comprova que o caminho do anfitrião é realmente persistente antes de uma aplicação importante depender dele.
Perguntas frequentes
Que porta utiliza o Redis?
6379, por predefinição.
Devo mapear a porta 6379 para todas as interfaces?
Não. Ligue-a apenas onde for necessário, de preferência ao localhost ou a um caminho Docker/LAN privado.
Onde devem ficar os dados do Redis?
Mapeie o diretório /data do contentor para armazenamento persistente do CasaOS.
Preciso do RedisInsight?
Não. É uma interface de gestão opcional; o Redis funciona sem ela.
