dockerfile配置远程ssh登录

1、dockerfile

FROM ubuntu:20.04

RUN DEBIAN_FRONTEND="noninteractive" apt-get update && apt-get -y install tzdata

RUN apt-get update \
  && apt-get install -y ssh \
      build-essential \
      gcc \
      g++ \
      gdb \
      clang \
      make \
      ninja-build \
      cmake \
      autoconf \
      automake \
      locales-all \
      dos2unix \
      rsync \
      tar \
      python \
  && apt-get clean

RUN ( \
    echo 'LogLevel DEBUG2'; \
    echo 'PermitRootLogin yes'; \
    echo 'PasswordAuthentication yes'; \
    echo 'Subsystem sftp /usr/lib/openssh/sftp-server'; \
  ) > /etc/ssh/sshd_config_test_clion \
  && mkdir /run/sshd

RUN useradd -m user \
  && yes password | passwd user

RUN usermod -s /bin/bash user

CMD ["/usr/sbin/sshd", "-D", "-e", "-f", "/etc/ssh/sshd_config_test_clion"]

2、用法

# Build and run:
docker build -t clion/remote-cpp-env:0.5 -f Dockerfile.remote-cpp-env .
docker run -d --cap-add sys_ptrace -p 127.0.0.1:2222:22 --name clion_remote_env clion/remote-cpp-env:0.5

ssh-keygen -f "$HOME/.ssh/known_hosts" -R "[localhost]:2222"

# stop:
docker stop clion_remote_env

# ssh credentials (test user):
user@password 

  

  

posted @ 2023-02-08 11:15  凡人半睁眼  阅读(98)  评论(0编辑  收藏  举报