Прогон Docker не отображает никакого вывода - программирование
Подтвердить что ты не робот

Прогон Docker не отображает никакого вывода

Я установил докер на малине-пи (подключен через ssh). Установка прошла успешно.

Но запуск docker run hello-world дает выхода.

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

Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world ad0f38092cf2: Pull complete Digest: sha256:e366bc07db5e8a50dbabadd94c2a95d212bc103e3557e47df8a2eebd8bb46309 Status: Downloaded newer image for hello-world:latest

Но фактического вывода из hello world script нет

Примечание. Я установил докер с помощью команды curl -sSL https://get.docker.com | sh curl -sSL https://get.docker.com | sh

Я тоже пробовал следующую команду

sudo usermod -aG docker pi
sudo systemctl start docker
sudo docker run hello-world

Пробовали следующие команды docker ps -a

CONTAINER ID        IMAGE               COMMAND             CREATED              STATUS                           PORTS               NAMES
734dd8f733d7        hello-world         "/hello"            About a minute ago   Exited (139) 59 seconds ago                          thirsty_bhaskara
4b9b3361

Ответ 1

Я столкнулся с той же проблемой на Raspberry Pi 1B+ (armv6l). Вдохновленный ответом @JanDrábek, первое наблюдение состоит в том, что изображение hello-world действительно будет тем, которое поддерживает ARM, но только после использования hypriot/armhf-hello-world я получил ожидаемый результат:

$ uname -a
Linux 4.1.19+ #858 Tue Mar 15 15:52:03 GMT 2016 armv6l GNU/Linux
$ docker run hello-world  # No output
$ docker image inspect hello-world | grep Architecture  # Arch looks right though
        "Architecture": "arm",
$ docker run hypriot/armhf-hello-world  # This does the job
Hello from Docker.
This message shows that your installation appears to be working correctly.

Ответ 2

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

# Delete all containers
docker rm $(docker ps -a -q)
# Delete all images
docker rmi $(docker images -q)

Ответ 3

бежать:

docker ps -a

и проверьте, можете ли вы увидеть выведенный контейнер.

взять идентификатор контейнера с выхода и тип

docker logs <ID>

это позволит вам увидеть журналы.

если вы хотите увидеть результат в первую очередь при запуске, добавьте флаги -it в команду run

редактировать:

Я попробовал на своей машине:

docker run -it hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
d1725b59e92d: Pull complete 
Digest: sha256:e366bc07db5e8a50dbabadd94c2a95d212bc103e3557e47df8a2eebd8bb46309
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

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

docker run -it hello-world > ./test.txt 2>&1

после этого проверьте, имеет ли файл какой-либо контент

Ответ 4

У меня недавно была такая же проблема с моей недавно установленной Fedora 28 (обновленная версия)... все контейнеры вышли с кодом выхода 139, docker events сказали, что они умерли, а docker logs не сказали ничего.

Мое решение состояло в том, чтобы обновить докер (или переключиться на выпуск CE), поскольку установленная версия докера была 1.13, которая довольно старая. (Учебное пособие для fedora https://docs.docker.com/install/linux/docker-ce/fedora/)

Также я столкнулся с одной потенциальной возможностью, чтобы проверить... ваш контейнер совместим с вашей архитектурой (малина - это ARM, не так ли?) Используйте docker image inspect <image> поиск Architecture.

Ответ 5

В настоящее время у меня такая же проблема, конфигурация такая же на малине-пи. В первый раз был загружен привет-мир, и у меня не было ошибок, но когда я запускаю:

docker run -it hello-world

Я не вижу выхода. Даже перенаправление стандартного вывода и ошибки не влияет (я использую tcsh):

docker run -it hello-world >& ./test.txt

test.txt пуст. Я также проверил журналы:

docker logs [docker ID]

где идентификатор докеры является одним из

docker ps -as

Журналы пустые (никаких ошибок нет)

Я запустил:

docker info

со следующим результатом

Containers: 9
 Running: 0
 Paused: 0
 Stopped: 9
Images: 1
Server Version: 18.06.1-ce
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 468a545b9edcd5932818eb9de8e72413e616e86e
runc version: 69663f0bd4b60df09991c08812a60108003fa340
init version: fec3683
Kernel Version: 4.9.35+
Operating System: Raspbian GNU/Linux 8 (jessie)
OSType: linux
Architecture: armv6l
CPUs: 1
Total Memory: 433.6MiB
Name: lzer0
ID: DG63:6BNT:5HPX:B2IJ:COIB:C3DC:MAM3:QON6:JAS4:Z6CC:7ZMV:B2VA
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

WARNING: No swap limit support
WARNING: No cpu cfs quota support 
WARNING: No cpu cfs period support
WARNING: No cpuset support

Надеюсь, кто-то может нам помочь