Невозможно запустить локальный образ докера - PullRequest
1 голос
/ 23 марта 2019

Я не могу запустить локальный образ eclipse / che.т.е. из исходного кода eclipse / che на моем компьютере.

Вот шаги, которые я попробовал:

  1. Клонировать код eclipse / che src в //d/checmd3/che.

git clonehttps://github.com/eclipse/che.git & git checkout tags / 7.0.0-beta-2.0

Build it cd Assembly / Assembly-Main mvn clean install

... Новая сборка помещается в:

cd che / Assembly / Assembly-Main / target /затмить-che- / затмение-che-

Запустите его в Docker

Docker Run -it --rm -v //var/run/docker.sock://var/run/docker.sock -v // d /checmd3 / che / сборка / основная сборка / цель / eclipse-che-7.0.0-beta-2.0 / eclipse-che-7.0.0-beta-2.0: / che -e CHE_ASSEMBLY = // d / checmd3 / che /сборка / главная сборка / цель / eclipse-che-7.0.0-beta-2.0 / eclipse-che-7.0.0-beta-2.0 -v // d / checmd3 / che / tmp: / затмение данных / запуск che


После выполнения шага 3 выше было показано следующее сообщение: Не удается найти локально изображение 'eclipse / che: 7.0.0-beta-2.0' 7.0.0-beta-2.0: извлечение из eclipse /че

я полагаю, что докер не пытается запустить образ с моего локального ПК?Я не уверен, является ли проблема № 3 выше или нет.Пожалуйста, помогите мне запустить образ из кода src, клонированного на моем компьютере.(ссылка: https://github.com/eclipse/che/wiki/Development-Workflow)

Ответы [ 6 ]

0 голосов
/ 24 марта 2019

Произошла ошибка при запуске предложенной вами команды:

$ docker run --interactive --tty --rm --net = host --volume = // var / run / docker.sock: //var/run/docker.sock --volume = / $ { PWD} / che / data: / затмение данных / che: ночной старт

Вот лог:

Невозможно найти изображение 'eclipse / che: latest' локально последнее: вытащить из затмения / че d6a5679aa3cf: извлечение завершено cc87d3e420c3: извлечение завершено afef80a99ec8: извлечение завершено d4be2f254bed: извлечение завершено 3e449e5a7821: извлечение завершено 5b621c46cfe0: извлечение завершено ecdf06277042: извлечение завершено dcbe7590a8ca: вытащить завершено Дайджест: sha256: bd853bd40a4fafe73153dda478f1191d3d29447f3d110584933a5fb22e8cb199 Статус: скачал новое изображение для eclipse / che: последнее Ошибка: нет такого изображения или контейнера: linuxkit-00155d19290d

Вчера я не получил ошибку linuxkit: - (

0 голосов
/ 24 марта 2019

Вы можете сначала попытаться запретить Eclipse Che извлекать образ из концентратора Docker, установив: CHE_DOCKER_ALWAYS__PULL__IMAGE=false в вашем файле конфигурации che.env .

Если это не поможет, то я думаю, что вам нужно установить и запустить локальный реестр Docker, а затем отправить созданный вами локальный образ Eclipse Che в этот реестр.

docker run -d -p 5000:5000 --name registry registry:2
docker image tag che:7.0.0-beta-2.0 eclipse/che:7.0.0-beta-2.0
docker push eclipse/che:7.0.0-beta-2.0

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

Вы можете остановить реестр:

docker container stop registry && docker container rm -v registry
0 голосов
/ 24 марта 2019

Если вы хотите запускать свои собственные двоичные файлы Che, синтаксис, который вы используете, является правильным.В любом случае, CL CLI извлечет образ по умолчанию, но ваши двоичные файлы будут смонтированы в контейнер.Будет ли это работать для вас?

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

-e IMAGE_CHE=myRegistry/myRepo:myTag
0 голосов
/ 24 марта 2019

Спасибо. Я попробовал следующую команду docker:

docker run -it --rm -v //var/run/docker.sock http://var/run/docker.sock -v // d / checmd3 / che / assembly / assembly-main / target / eclipse -che-7.0.0-бета-2,0 / затмение-че-7.0.0-бета-2,0 : / che -e CHE_ASSEMBLY = '// d / checmd3 / che / сборка / главная сборка / target / eclipse-che-7.0.0-beta-2.0 / eclipse-che-7.0.0-beta-2.0' -v // d / checmd3 / che / tmp: / затмение данных / начало че

но все равно отображается сообщение:

Невозможно найти изображение 'eclipse / che: latest' локально

последний: вытащить из затмения / че

(докер все еще не использует исходный код, встроенный в мой компьютер)

0 голосов
/ 24 марта 2019

Попробуйте команду docker:

docker run -it --rm \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /d/checmd3/che/assembly/assembly-main/target/eclipse-che-7.0.0-beta-2.0/eclipse-che-7.0.0-beta-2.0:/che \
-e CHE_ASSEMBLY='/d/checmd3/che/assembly/assembly-main/target/eclipse-che-7.0.0-beta-2.0/eclipse-che-7.0.0-beta-2.0' \
-v /d/checmd3/che/tmp:/data \
eclipse/che start

НАД РАБОТАЕТ КОМАНДА

INFO: (che init):   CHE_VERSION=7.0.0-beta-2.0
INFO: (che init):   CHE_CONFIG=/d/checmd3/che/tmp
INFO: (che init):   CHE_INSTANCE=/d/checmd3/che/tmp/instance
INFO: (che config): Generating che configuration...
INFO: (che config): Customizing docker-compose for running in a container
INFO: (che start): Preflight checks
         mem (1.5 GiB):           [OK]
         disk (100 MB):           [OK]
         port 8080 (http):        [AVAILABLE]
         conn (browser => ws):    [OK]
         conn (server => ws):     [OK]

INFO: (che start): Starting containers...
INFO: (che start): Services booting...
INFO: (che start): Server logs at "docker logs -f che"
INFO: (che start): Booted and reachable
INFO: (che start): Ver: 7.0.0-beta-2.0
INFO: (che start): Use: http://172.26.10.112:8080
INFO: (che start): API: http://172.26.10.112:8080/swagger
0 голосов
/ 24 марта 2019

Я незнаком с Eclipse Che, но, похоже, вы можете просто запустить их образы на своей машине, если вы установили Docker.

Начните с создания локального каталога данных, возможно:

mkdir -p ${PWD}/che/data

Тогда:

docker run 
--interactive \
--tty \
--rm \
--net=host \
--volume=/var/run/docker.sock:/var/run/docker.sock \
--volume=${PWD}/che/data:/data \
eclipse/che:nightly start

https://www.eclipse.org/che/docs/che-6/docker-single-user.html

Возможно, вам не нужен флаг --net=host

После этого вы сможете получить доступ к инструменту:

http://localhost:8080

enter image description here

NB Ваши шаги 1 и 2 (git clone... и mvn clean install), вероятно, являются избыточными. Скорее всего, это команды для создания образа Docker. Но, поскольку образ уже существует в dockerhub, вам не нужно выполнять следующие шаги.

...