目标
在上次构建的 openjdk8 基础上, 构建 openssh-server 镜像, 并通过 docker-compose 创建三个容器, 实现互相免密登录.
openssh-server 镜像
dockerfile
:
FROM adxs/openjdk:8
COPY init_ssh.sh /root/init_ssh.sh
# 设置时区
RUN ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
# 更新包列表和安装所需的软件包, 以及删除缓存
RUN apt-get update && \
apt-get install -y openssh-server sshpass && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
# 配置 SSH 服务
RUN mkdir /var/run/sshd && \
echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config && \
echo 'root:1111' | chpasswd && \
ssh-keygen -q -t rsa -b 4096 -N "" -f /root/.ssh/id_rsa && \
chmod +x /root/init_ssh.sh
# 启动 SSH 服务
ENTRYPOINT ["/bin/bash", "-c", "/usr/sbin/sshd && /root/init_ssh.sh && tail -f /dev/null"]
<