【发布时间】:2019-06-25 19:44:22
【问题描述】:
我有以下 Dockerfile:
FROM phusion/baseimage:0.9.16
RUN mv /build/conf/ssh-setup.sh /etc/my_init.d/ssh-setup.sh
EXPOSE 80 22
CMD ["node", "server.js"]
我的/build/conf/ssh-setup.sh 如下所示:
#!/bin/sh
set -e
echo "${SSH_PUBKEY}" >> /var/www/.ssh/authorized_keys
chown www-data:www-data -R /var/www/.ssh
chmod go-rwx -R /var/www/.ssh
它只是将SSH_PUBKEY env 添加到/var/www/.ssh/authorized_keys 以启用ssh 访问。
我像下面这样运行我的容器:
docker run -d -p 192.168.99.100:80:80 -p 192.168.99.100:2222:22 \
-e SSH_PUBKEY="$(cat ~/.ssh/id_rsa.pub)" \
--name dev hub.core.test/dev
我的容器启动正常,但不幸的是 /etc/my_init.d/ssh-setup.sh 脚本没有被执行,我无法 ssh 我的容器。
您能帮我看看/var/www/.ssh/authorized_keys 在我的容器启动时没有被执行的原因吗?
【问题讨论】:
标签: docker ssh dockerfile