Docker-compose找不到.env文件
我有3个容器postgresql,Nginx和Django。 最后两个有自己的Dockerfile,我用docker-compose运行整个系统。 我有多个问题:
-
我无法运行我的自定义nginx容器,命名为
nginx
与生成build: ./nginx/
nginx
build: ./nginx/
。 只有image: nginx
。 是的,我尝试在线程中build议docker-compose build
。 -
奇怪的行为与卷,我提到了一个:
- ./web:/code
和没有工作,我评论它,但现在Django说:
/usr/local/lib/python3.5/site-packages/environ/environ.py:609:UserWarning:/code/translation_microservice/.env不存在 - 如果您没有单独configuration您的环境,请创build一个。 “分开的环境,创造一个”。 %env_file) 回溯(最近一次通话最后): 文件“manage.py”,第22行,在 execute_from_command_line(sys.argv中) 文件“/usr/local/lib/python3.5/site-packages/django/core/management/__init__.py”,第363行,在execute_from_command_line utility.execute() 在执行文件“/usr/local/lib/python3.5/site-packages/django/core/management/__init__.py”,第337行 django.setup() 在设置文件“/usr/local/lib/python3.5/site-packages/django/__init__.py”,第27行 apps.populate(settings.INSTALLED_APPS) 文件“/usr/local/lib/python3.5/site-packages/django/apps/registry.py”,第108行,填充 app_config.import_models() 在import_models中的文件“/usr/local/lib/python3.5/site-packages/django/apps/config.py”,第202行 self.models_module = import_module(models_module_name) 在import_module中的文件“/usr/local/lib/python3.5/importlib/__init__.py”,第126行 返回_bootstrap._gcd_import(名称[级别:],包,级别) 文件“”,行986,在_gcd_import 文件“”,行969,在_find_and_load 文件“”,行958,在_find_and_load_unlocked 文件“”,行673,在_load_unlocked 在exec_module中的文件“”,第673行 文件“”,第222行,在_call_with_frames_removed 文件“/code/api_controller/models.py”,第8行, 从web.translation导入TranslatedLesson,TranslatedStep ImportError:没有名为“web”的模块
我的文件树:
。 ├──docker-compose.yml ├──nginx │├──Dockerfile │└──nginx.conf ├──__pycache__ ├──README.md ├──venv │├──斌 │├──包括 │├──lib │└──pip-selfcheck.json └──网页 ├──.env ├──Dockerfile ├──manage.py ├──requirements.txt └──翻译
我的docker – 撰写文件:
版本:'3' 服务: 现场: build立:./web env_file:./web/.env #想要做到这一点 #volumes: # - ./web:/code 命令:python manage.py runserver 0.0.0.0:8000 代理: #想要build立:./nginx/ image:nginx 端口: - “80:80” - “443:443” 卷: - / www /静态 Postgres的: 重新启动:总是 图片:postgres:最新 端口: - “5432:5432” 卷: - / var / lib / postgresql / data /
最后是我的两个Dockerfiles。 Django Dockerfile:
从python:3.5 ENV PYTHONUNBUFFERED 1 运行mkdir /代码 WORKDIR /代码 ADD ./requirements.txt / code / 运行pip安装--no-cache-dir -r requirements.txt ADD。 /码/ EXPOSE 8000 CMD [“/ usr / local / bin / gunicorn”,“translation_microservice.wsgi”,“-w”,“2”,“-b”,“:8000”,“ - access-logfile”,“ - ” “--capture输出”]
Nginx的Dockerfile:
从nginx:最新 COPY ./nginx.conf /etc/nginx/nginx.conf
- 使用docker-compose的Django应用程序将数据保存在媒体卷中
- Django与Heroku上的Postgresql – 无法将主机名“db”翻译为地址:名称或服务未知
- docker与python3和Django的生产形象?
- 集成social_django时,“社交”不是注册的名称空间
- 使用docker和django公开8000端口
- Django服务器不会在Docker-Compose中启动
- manage.py collectstatic:error:无法识别的参数: – 由Docker启动的shell脚本中的–noinput
- 多个docker为相同的代码库构成环境
- 如何使用/链接远程postgres数据库与Django泊坞窗实施