nodejs,redis,npm和docker-compose setup

时间:2017-04-19 06:57:46

标签: docker docker-compose

我想用docker和docker-compose安装nodejs,npm,redis和memcached。 但我没有安装redis(document)。

我接下来做了: 1安装docker,docker-compose 2创建文件夹:〜/ app 目录中的3是创建Dockerfile,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:// localunixsocket的Docker守护程序 -   它在运行吗?如果它位于非标准位置,请指定URL   使用DOCKER_HOST环境变量。

有什么问题?如何设置至少一个redis?

P.S。如果您知道如何使用docker-compose nodejs安装npm和memcached 我将不胜感激。

2 个答案:

答案 0 :(得分:0)

Mybe不是很好的解决方案,但是没有找到另一个。我在github现成的解决方案上找到了。

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

答案 1 :(得分:0)

如何在命令之前添加sudo