node-js应用程序无法解析docker-compose中更改服务名称

时间:2021-06-20 05:10:10

标签: node.js docker docker-compose redis

我把redis容器的服务名从“redis-server”改成了“redis”。问题是node-js容器无法解析服务名称“redis”,node-js容器因为这个问题而自动宕机。当我从“redis”切换回 redis 容器的服务名称到“redis-server”时,两个容器启动并运行,一切正常。

这是 Node-js 代码

const express = require('express');
const redis = require('redis');

const app = express();
const client = redis.createClient({
    host: 'redis',
    port: 6379
});
client.set('visits', 0);

app.get('/', (req, res) => {
  client.get('visits', (err, visits) => {
    res.send('Number of visits is ' + visits);
    client.set('visits', parseInt(visits) + 1);
  });
});

app.listen(8081, () => {
  console.log('Listening on port 8081');
});

这是 docker-compose.yml

version: '3.8'
services: 
    redis:
        image: 'redis'
    node-app:
        build: .
        ports:
            - "4001:8081"

0 个答案:

没有答案
相关问题