我正在使用docker。在我的一个容器中,我想使用boto3,因此我从容器内部使用了此命令
RUN apt-get install boto3
但它显示我喜欢
bash: RUN: command not found
我也尝试过sudo apt-get install boto3
,但它也向我显示了类似的错误
bash: sudo: command not found
那么有人可以告诉我如何在Docker容器中安装软件包吗?
更新
当我赚docker ps -a
我明白了
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
distracted_rubin
6a8b04e81122 odoo:11.0 "/entrypoint.sh odoo" 6 weeks ago Up 4 hours 8071/tcp, 0.0.0.0:18069->8069/tcp odoo
您可以看到mu容器ID是6a8b04e81122
,我使用此命令进入了容器
docker exec -it 6a8b04e81122 /bin/bash
答案 0 :(得分:0)
odoo 图片使用名为 odoo 的用户。该用户没有足够的特权来安装软件包。
因此,您必须创建一个具有不同用户(即root)的容器。
docker run -it --user root odoo:11 bash
现在,您已使用 root 用户上下文创建了一个容器。
您可以通过发出以下命令来安装 boto3 。
apt update
For python 2.x: apt install python-boto3
For python 3.x: apt install python3-boto3
最后,提交容器以保留更改。
更新:
您还可以通过发出以下命令来用其他用户打开现有容器。
docker exec -it --user root <container-id> bash