Отсутствует установленный пакет в образе Docker с помощью команды docker run - PullRequest
1 голос
/ 21 марта 2019

Я запустил несколько образов докера с помощью этой команды

C:\Users\muhammad.iqbal>docker run -it fedora
[root@13d5c5b5683b /]# yum install -y nano

Этот образ работает, и я могу установить nano пакет внутри этого образа Fedora. Но когда вы выходите из образов и пытаетесь снова запустить установленные пакеты, nano, как говорится,

C:\Users\muhammad.iqbal>docker run -it fedora
[root@8f49adc7b3af /]# nano
bash: nano: command not found

Говорят, что nano не установлен. Почему это происходит?

1 Ответ

3 голосов
/ 21 марта 2019

Потому что ваше изображение каждый раз новое.

docker run создаст контейнер.

Краткий ответ: (используйте docker exec)

docker run -it --name=my-image fedora
#yum install -y nano

docker exec -ti my-image nano

Длинный ответ :

Вы можете отобразить запущенный контейнер с помощью команды docker ps. Или отобразить запущенный и остановленный контейнер с помощью docker ps -a

Если вы хотите работать с изображением, вам нужно будет создать контейнер для хранения данных и воспроизведения с ними.

docker run создаст контейнер.

Указав --name=my-image, он установит имя вашего контейнера: my-image, которое будет использоваться для идентификации вашего контейнера.

Вы можете остановить свое изображение с помощью команды: docker stop my-image И вы можете запустить его с помощью команды: docker start my-image

Ваш контейнер автоматически остановится, если не запущен фоновый процесс. Но вы можете войти внутрь, используя команду: docker exec -ti my-image sh. А затем выполните команду, которую вы хотите. Вы можете использовать sh, bash или любую команду, которую использует ваше изображение.

Имейте в виду, что запуск Docker создаст новый контейнер, а это означает, что вы начнете с образа по умолчанию. Вот сила докера.

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