Я написал этот скрипт для подсчета посетителей каждый раз, когда они заходят. Но в процессе сборки он успешно загружает и устанавливает зависимости, но при выполнении с помощью команды docker -compose up строка redis.createClient ({}) выдает ошибку, поскольку это не функция.
**#Dockerfile**
FROM node:alpine
WORKDIR /app
COPY package.json .
RUN npm install
COPY . .
CMD ["npm", "start"]
**#docker-compose.yml**
version : '3'
services:
redis-server:
restart: always
image: redis
node-app:
restart: on-failure
build: .
ports:
- "4001:8081"
**# Application Code**
const express = require('express');
const redis = require('redis');
const process = require('process');
const app = express();
const client = redis.createClient({
host: 'redis-server',
port: 6379
});
client.set('visits', 0);
app.get('/', (req, res) => {
client.get('visits', (err, visits) => {
res.send('Number of visits ' + visits);
client.set('visits', parseInt(visits) + 1);
});
});
app.listen(8081, () => {
console.log('Listening on port 8081');
});