Docker: невозможно установить открывает sh -сервер - PullRequest
0 голосов
/ 22 апреля 2020

Я строю Docker на основе Ubuntu 16 и хочу разрешить PuTTY доступ к Ubuntu. Я добавил строку в файл docker:

#Download base image ubuntu 16.04
FROM ubuntu:16.04

# Update Software repository
RUN apt-get update

# Install nginx, php-fpm and supervisord from ubuntu repository
RUN apt-get install -y nginx php7.0-fpm supervisor && \
    rm -rf /var/lib/apt/lists/*

RUN apt-get autoclean  -y supervisor
RUN apt-get install openssh-server -y supervisor

Но когда я создаю образ, он дает мне

Шаг 5/18: RUN apt-get install открывается sh -server -y supervisor ---> Запуск в c9425deece29 Чтение списков пакетов ... Построение дерева зависимостей ... Чтение информации о состоянии ... E: Невозможно найти пакет открывает sh -server

Как это исправить? Моя задача: разрешить соединение с хоста (Windows) с контейнером docker через PuTTY.

1 Ответ

1 голос
/ 22 апреля 2020

Следующий Dockerfile должен работать.

#Download base image ubuntu 16.04
FROM ubuntu:16.04

# Update Software repository
RUN apt-get update && \
    apt-get upgrade -y

RUN apt-get install openssh-server -y supervisor    

# Install nginx, php-fpm and supervisord from ubuntu repository
RUN apt-get install -y nginx php7.0-fpm supervisor && \
    rm -rf /var/lib/apt/lists/*

RUN apt-get autoclean  -y supervisor

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

  • После обновления я всегда использую обновление для обновления всех пакеты в моей системе. Это не обязательно, но я считаю, что это хорошая практика
  • Вы удаляете / var / lib / apt / lists / *, затем вы пытаетесь установить, открывает sh -server. apt не может ничего найти на этом пути, когда это необходимо.
...