- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的Dockerfile:
FROM python:3.9
WORKDIR /usr/src/app
RUN pip install python-dotenv
RUN pip install other_libraries...
在构建容器期间,显示消息:
...
Step 3/4 : RUN pip install python-dotenv
---> Running in 5fffd3fe4042
Collecting python-dotenv
Downloading python_dotenv-0.15.0-py2.py3-none-any.whl (18 kB)
Installing collected packages: python-dotenv
Successfully installed python-dotenv-0.15.0
Removing intermediate container 5fffd3fe4042
---> 2cd0942f520c
...
但是,当我运行
docker-compose exec container_name pip list
时,列表
python-dotenv
库没有。
python:3.9
和
python:3.8
进行测试。
python-dotenv
时,一切都很好。
docker-compose exec container_name pip install python-dotenv
命令未正确安装?
最佳答案
我不使用docker-compose,但是由于您的标题表明Dockerfile不能正常工作,因此我可以告诉您,这显然不是问题。您的Dockerfile似乎正常工作:
>>> cat Dockerfile
FROM python:3.9
WORKDIR /usr/src/app
RUN pip install python-dotenv
>>> docker build -t so2 .
Sending build context to Docker daemon 2.048kB
Step 1/3 : FROM python:3.9
3.9: Pulling from library/python
e4c3d3e4f7b0: Pull complete
101c41d0463b: Pull complete
8275efcd805f: Pull complete
751620502a7a: Pull complete
0a5e725150a2: Pull complete
397dba5694db: Pull complete
b1d09d0eabcb: Pull complete
475299e7c7f3: Pull complete
d2fe14d8e6bc: Pull complete
Digest: sha256:429b2fd1f6657e4176d81815dc9e66477d74f8cbf986883c024c9b97f7d4d5a6
Status: Downloaded newer image for python:3.9
---> 5336a27a9b1f
Step 2/3 : WORKDIR /usr/src/app
---> Running in 37b03142a9b6
Removing intermediate container 37b03142a9b6
---> 4677ab34ce84
Step 3/3 : RUN pip install python-dotenv
---> Running in e89d17be1a32
Collecting python-dotenv
Downloading python_dotenv-0.15.0-py2.py3-none-any.whl (18 kB)
Installing collected packages: python-dotenv
Successfully installed python-dotenv-0.15.0
Removing intermediate container e89d17be1a32
---> 55d00eeae4b4
Successfully built 55d00eeae4b4
Successfully tagged so2:latest
>>> docker run -it so2 bash
root@d211989c4bd7:/usr/src/app# pip list
Package Version
------------- -------
pip 20.2.4
python-dotenv 0.15.0
setuptools 50.3.2
wheel 0.35.1
root@d211989c4bd7:/usr/src/app# exit
>>> docker run -it so2
Python 3.9.0 (default, Oct 13 2020, 20:14:06)
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from dotenv import load_dotenv; load_dotenv()
True
>>>
>>>
代表我在MacBook Pro终端窗口中的提示。
关于python - Dockerfile没有安装python-dotenv库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64628209/
我正在尝试构建一个 Linkedin API 代码,但我发现了一个奇怪的错误 Fatal error: Uncaught TypeError: Argument 1 passed to Dotenv\
我正在尝试构建一个 Linkedin API 代码,但我发现了一个奇怪的错误 Fatal error: Uncaught TypeError: Argument 1 passed to Dotenv\
我在 codeigniter 项目上使用 composer 从 vlucas 安装了 phpdotenv。 我也添加了钩子(Hook),如果 v3.3 需要的话我有点困惑 $hook['pre
大家好,我很困惑我不知道我做错了什么这告诉我 fatal error :在 中找不到“Dotenv\Dotenv”类 但我不明白为什么.. $dotenv = new \Dotenv\Dotenv(d
我想在纯 ruby 环境中使用 dotenv。我的意思是我没有使用 Rails。 github 指令说有两种加载变量的方法。 require 'dotenv/load' # or require
不确定为什么会收到此消息: Fatal error: Uncaught Symfony\Component\Debug\Exception\FatalThrowableError: Class 'Do
我正在尝试在我的 Node 服务器上使用 dotenv 实现环境变量,但是我无法从位于根目录中的 .env 文件加载它们。当我运行 const dotenv = require("dotenv").c
我正在尝试添加 flutter_dotenv在我的项目中。我尝试将 .env 文件添加到 PROJECTNAME/filename.env 和 PROJECTNAME/lib/filename.env
我正在使用 php dotenv用于我的 php 应用程序的环境变量。 自述文件说我可以加载 php dotenv进入我的应用程序: $dotenv = new Dotenv\Dotenv(__DIR
我已经安装了 dotenv 来设置开发和生产环境变量,其中一个变量是 ROOT_API,我的 env 文件如下所示 NODE_ENV=dev ROOT_API=http://localhost/pro
这是我的文件: postgresU="myuser" postgresP="mypass" postgresH="myhost" postgresDB="mydb" postgresC="postgr
我在这里很困惑。有人,请帮助我,在 .env 文件中写入一个字符串,如下所示, AUTH_CREDENTIALS={"username":"Auth_user1","password":"ABC123
我正在尝试使用 dotenv 加载的 process.env 访问一些环境变量。 我的文件夹结构: .env src -- - server.js 我的 server.js 配置: (...) imp
我在 根文件夹中有 .env 文件 文件 NODE_ENV=development NODE_HOST=localhost NODE_PORT=4000 NODE_HTTPS=false DB_HOS
为什么我不应该在生产模式下使用 dotenv? 我在一些网站上看到了以下代码。但我不明白他们为什么要进行这种条件检查。 if (process.env.NODE_ENV !== 'production
我使用带有特殊字符的密码,symfony 返回错误“格式错误的参数“url”。” 我怎样才能使用这种密码? foo?bar 我尝试使用这样的变量 DATABASE_USER='foo' DATABAS
我正在尝试使用 dotenv-webpack 插件。这在本地效果很好。但是当我部署到 Heroku 时失败了。 我已经根据这个 git issue 遵循了建议,但仍然有问题。 我的 webpack 配
在我的 Express JS API 服务器中,我尝试使用带有 .env 的 dotenv我的环境设置文件。 我更喜欢使用 .env用于开发和生产环境的文件。 我正在使用 nodemon 进行开发,目
我在PostgreSQL中使用Diesel ORM包装器。我关注的the guide on their website具有以下代码: pub fn establish_connection() ->
使用 .env 文件存储 API 凭证时,将它们存储为带引号的字符串更好还是不带引号?两者之间有什么区别吗?例如,我的 .env 文件中有以下 Firebase 服务帐户凭据,哪种方式更好?: typ
我是一名优秀的程序员,十分优秀!