SSH в вашем контейнере
Edgegap не рекомендует делать службу SSH доступной в ваших продуктивных развертываниях.
Изменение вашего Dockerfile
Мы будем собирать контейнер Docker, используя другой Docker Dockerfile в этой версии.
Нам нужно установить службу OpenSSH и включить её. Создайте пользователя и пароль для подключения к вашему серверу.
В контейнере, запущенном на Alpine, объедините следующее:
RUN apk --update add --no-cache openssh bash
RUN sed -i s/#PermitRootLogin.*/PermitRootLogin\ yes/ /etc/ssh/sshd_config
RUN echo "tester:$ecureP@ss" | chpasswd
EXPOSE 22В контейнере, запущенном на Ubuntu, добавьте следующее:
RUN apt-get update
RUN apt-get install openssh-server sudo -y
RUN useradd -rm -d /home/ubuntu -s /bin/bash -g root -G sudo -u 1000
RUN echo 'tester:$ecureP@ss' | chpasswd
EXPOSE 22В вашем entrypoint вам нужно будет добавить следующую команду:
Мы рекомендуем протестировать развертывание локально, используя команду docker run, чтобы проверить запуск сервера.
После тестирования вы можете запушить вашу новую версию в репозиторий контейнеров.
На Edgegap
Мы предлагаем иметь версию с именем -dev или что-то, что имеет смысл для вашего сервиса. Таким образом у вас будет возможность выполнить некоторые тесты и легко войти в ваш контейнер с использованием инфраструктуры Edgegap.
Создайте новую версию вашего приложения, добавив
Открыть TCP-порт 22Создайте развертывание, используя только что созданную версию
Как только служба запущена (Ready), посмотрите информацию о вашем развертывании. Вы увидите внешнее отображение порта 22.
Вы можете использовать Putty и подключиться, используя FQDN развертывания или IP и отображаемый порт
Имя пользователя и пароль, которые вы настроили.
Последнее обновление
Это было полезно?

