# 第一个docker-compose 的python和redis的环境搭建配置文件 **Repository Path**: lmh860628/dockercompose ## Basic Information - **Project Name**: 第一个docker-compose 的python和redis的环境搭建配置文件 - **Description**: 第一个docker-compose 的python+redis的环境搭建配置文件,参考官网上面的配置,但是有调整。 - **Primary Language**: Docker - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-10-26 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 第一个docker-compose 的python和redis的环境搭建配置文件 #### 项目介绍 第一个docker-compose 的python+redis的环境搭建配置文件,参考官网上面的配置,但是有调整。 ### 步骤 1 在根目录创建目录 mkdir composertest 2、文件列表 ``` app.py, docker-compose.yml, dockerfile ,redis.conf,redis.dockerfile,requirements.txt ``` 3、web(python) 3.1 app.py 这个完全照搬官网上面的python脚本 3.2 requirements.txt 同上 3.3 docker-compose.yml 做了小的调整,主要是redis 镜像独立出来,搭配redis的配置文件更符合生产环境 ``` version: '3' services: web: build: . ports: - "5000:5000" volumes: - .:/code redis: build: context: . dockerfile: redis.dockerfile ports: - "6389:6379" volumes: - /var/redisdata:/var/redisdata ``` 3.4 dockerfile 完全参考官网上面的 ``` FROM python:3.6-alpine ADD . /code WORKDIR /code RUN pip install -r requirements.txt CMD ["python","app.py"] ``` 3.5 redis.conf 基本照搬redis.conf的默认配置文件 3.6 redis.dockerfile 如下,需要注意WORKDIR /code 和 /var/redisdata 权限问题(这个目录是redis的数据备份目录) .WORGKDIR这个是标注工作目录,不然在启动docker-compose 总是报错。./redis.conf 找不到。 其中 /var/redisdata 这个最好是在 docker-compose.yml 做一层数据挂载目录 ``` FROM redis:alpine WORKDIR /code COPY ./redis.conf /code RUN mkdir /var/redisdata && chmod -R 777 /var/redisdata EXPOSE 6379 CMD ["redis-server","./redis.conf"] ``` 标注: 其中红色部分是第二种方法运行,区别就是将redis 的备份文件目录做成挂载目录,这个更加符合生产环境,注意如果不创建/var/redisdata 这个目录将报错,创建后也要注意读写权限问题。作为挂载目录则很容易避免权限问题 4 在当前目录下运行 docker-compose up 如果不是第一次运行,则docker-compose up --build ,命令行会有提示