docker пробег nginx: последние зависают бесконечно - PullRequest
0 голосов
/ 20 марта 2020

edit: другие контейнеры работают нормально. docker run hello-world работает нормально.

Я пытаюсь запустить самый последний nginx docker образ. Он висит бесконечно. Я пробовал это на 2 отдельных виртуальных машинах fre sh install Ubuntu. Я понятия не имею, как поступить. Мы будем благодарны за любую помощь.

docker run nginx:latest
Unable to find image 'nginx:latest' locally
latest: Pulling from library/nginx
68ced04f60ab: Already exists 
28252775b295: Already exists 
a616aa3b0bf2: Already exists 
Digest: sha256:2539d4344dd18e1df02be842ffc435f8e1f699cfc55516e2cf2cb16b7a9aea0b
Status: Downloaded newer image for nginx:latest
...

... и она будет висеть в конце.

и некоторые netstat для проверки свободных портов 80 и 443.

sudo netstat -tulpn
[sudo] password for josh: 
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      387/systemd-resolve 
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      471/cupsd           
tcp6       0      0 ::1:631                 :::*                    LISTEN      471/cupsd           
udp        0      0 127.0.0.53:53           0.0.0.0:*                           387/systemd-resolve 
udp        0      0 0.0.0.0:68              0.0.0.0:*                           6179/dhclient       
udp        0      0 0.0.0.0:631             0.0.0.0:*                           685/cups-browsed    
udp        0      0 0.0.0.0:46233           0.0.0.0:*                           485/avahi-daemon: r 
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           485/avahi-daemon: r 
udp6       0      0 :::5353                 :::*                                485/avahi-daemon: r 
udp6       0      0 :::35115                :::*                                485/avahi-daemon: r 

1 Ответ

0 голосов
/ 20 марта 2020

Когда вы выполняете эту команду docker run nginx:latest, вы фактически запускаете ее в подключенном режиме, что означает

  • Весь журнал из stdout и stderr будет распечатан на экране
  • Если вы выйдете из команды, используя Ctrl + c или Cmd + c, контейнер будет остановлен.

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

Вместо этого можно попробовать выполнить следующую команду

docker run -it -d \
  --name nginx_container \
  -p 80:80 \
  -p 443:443 \
  nginx:latest

Обратите внимание, что эта команда создаст работающий контейнер nginx с именем nginx_container, работающий в фоновом режиме (режим отсоединения) , Повторное выполнение этой команды приведет к жалобе, что The container name "/nginx_container" is already in use by container.

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

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