Установите boto3 из док-контейнера - PullRequest
0 голосов
/ 12 июня 2019

Я использую докер.В одном из моих контейнеров я хочу использовать 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 равен 6a8b04e81122 Я использовал эту команду, чтобы войти внутрь контейнера

docker exec -it 6a8b04e81122 /bin/bash

1 Ответ

0 голосов
/ 12 июня 2019

odoo image by по умолчанию использует пользователя с именем odoo . У этого пользователя недостаточно прав для установки пакета.

Таким образом, вы должны создать контейнер с другим пользователем (т.е. корнем).

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...