1001Ferramentas
🔴Dev

docker-compose Redis

Gera um docker-compose pronto para Redis, com a porta 6379 publicada e volume persistente. Escolha a tag da imagem e suba seu cache ou broker local com um docker compose up.

YAML

Redis local para cache ou fila

Projeto com Celery, Sidekiq, BullMQ ou cache de sessão precisa de um Redis rodando em algum lugar, e instalar na máquina significa lembrar de desinstalar depois. Escolha a tag da imagem (7-alpine, 7.2, a que o projeto usa) e copie o YAML: serviço redis, porta 6379 publicada e o volume rdata montado em /data, que é o diretório de trabalho da imagem oficial.

A versão da imagem é o único campo, e isso define o que vem no arquivo: não há senha nem ajuste de persistência na saída. O Redis sobe com os padrões de fábrica, que fazem snapshot RDB dentro de /data, e é por isso que o volume faz sentido; o AOF fica desligado. Para mudar, acrescente uma linha command ao serviço, como redis-server --appendonly yes --requirepass suasenha.

Publicar a 6379 num servidor alcançável pela internet e sem senha é convite para varredura automatizada, e instância de Redis exposta é alvo antigo e conhecido. Em máquina de desenvolvimento, tudo bem. Em VPS, troque para 127.0.0.1:6379:6379 ou remova a seção ports e deixe só a rede interna do Compose, lembrando que a regra criada pelo Docker não respeita o ufw. O YAML é montado no navegador.

Perguntas frequentes

Onde coloco a senha do Redis?
Numa linha command dentro do serviço: command: redis-server --requirepass suasenha. A ferramenta não gera esse campo, então é edição manual depois de copiar.
Perco os dados quando o container reinicia?
Não, porque o snapshot RDB fica no volume rdata. Só que RDB grava de tempos em tempos, então uma queda abrupta pode custar os últimos segundos. Para durabilidade maior, ligue o appendonly.
Dá para usar como broker de fila?
Esse é o uso mais comum. De outro container do mesmo compose, aponte a URL para redis://redis:6379/0, usando o nome do serviço como host.

Ferramentas Relacionadas