Я новичок в докере и Linux.
Я использую Windows 10 и получил пример github для создания контейнера с Centos и nginx.
Мне нужно использовать пользователя root для изменения nginx.config.
В Kitematic я нажал на Exec, чтобы получить оболочку bash в контейнере, и попробовал sudo su - as blow:
sh-4.2$ sudo su –
sh: sudo: command not found
Итак, я попытался установить sudo с помощью следующей команды:
sh-4.2$ yum install sudo -y
Loaded plugins: fastestmirror, ovl
ovl: Error while doing RPMdb copy-up:
[Errno 13] Permission denied: '/var/lib/rpm/Installtid'
You need to be root to perform this command.
Потом я запустил su -, но я не знаю пароля!Как я могу установить пароль?
sh-4.2$ su -
Password:
Затем из powershell на моих окнах я также попытался:
PS C:\Containers\nginx-container> docker exec -u 0 -it 9e8f5e7d5013 bash
, но он показывает, что скрипт работает, и ничего не произошло, и я отменил его с помощью Ctrl + C послечас.
Некоторая дополнительная информация:
Вот как я создал контейнер:
PS C:\Containers\nginx-container> s2i build https://github.com/sclorg/nginx-container.git --context->dir=examples/1.12/test-app/ centos/nginx-112-centos7 nginx-sample-app
Из оболочки bash в контейнере.Я могу получить информацию об ОС следующим образом:
sh-4.2$ cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
Буду очень признателен, если вы поможете мне решить эти проблемы.
Спасибо!