nodejs,redis,npm和docker-compose设置

我想用docker和docker-compose来安装nodejs,npm,redis和memcached。 但是我没有安装redis(通过文档 )。

我做了下一步:1.安装docker,docker-compose 2.创build文件夹:目录中的〜/ app 3是创buildDockerfile,docker-compose.yml,app.py,requirements.txt

requirements.txt:

redis

app.py

 from flask import Flask from redis import Redis app = Flask(__name__) redis = Redis(host='redis', port=6379) @app.route('/') def hello(): count = redis.incr('hits') return 'Hello World! I have been seen {} times.\n'.format(count) if __name__ == "__main__": app.run(host="0.0.0.0", debug=True) 

Dockerfile

 FROM redis:3.2-stable ADD . /app WORKDIR /app RUN pip install -r requirements.txt CMD [ "app.py"] 

泊坞窗,compose.yml

 version: '2' services: web: build: . ports: - "5000:5000" volumes: - .:/code redis: image: "redis:alpine" 

运行组合docker-compose up -d并出错

无法在http + docker上连接到Docker守护进程:// localunixsocket – 它正在运行吗? 如果位于非标准位置,请使用DOCKER_HOST环境variables指定URL。

什么是问题? 如何设置至less一个redis?

PS如果你知道如何安装docker-compose nodejs npm和memcached,我将不胜感激

Mybe这不是很好的解决scheme,但是没有find另一个。 我find了github现成的解决scheme。

  1. 安装docker和docker -compose (docs.docker.com/compose/install/)
  2. 创build文件夹(我的项目在/var/www/example.com)
  3. 运行docker-compose构build。
  4. 运行docker – 组成

如何在你的命令之前添加sudo