Redis wird in einem separaten Container ausgeführt, der über einen separaten virtuellen Ethernet-Adapter und eine separate IP-Adresse für den Container verfügt, in dem Ihre Knotenanwendung ausgeführt wird. Sie müssen die beiden Container verknüpfen oder ein benutzerdefiniertes Netzwerk für sie erstellen
docker network create redis
docker run -d --net "redis" --name redis redis
docker run -d -p 8100:8100 --net "redis" --name node redis-node
Geben Sie dann den Host redis
an Beim Verbinden im Knoten versucht der Redis-Client, sich mit redis
zu verbinden Container anstelle des Standardwerts localhost
const redis = require('redis')
const client = redis.createClient(6379, 'redis')
client.on('connect', () => console.log('Connected to Redis') )
Docker Compose kann bei der Definition von Multi-Container-Setups helfen.
version: '2'
services:
node:
build: .
ports:
- "8100:8100"
networks:
- redis
redis:
image: redis
networks:
- redis
networks:
redis:
driver: bridge