久久96国产精品久久久-久久发布国产伦子伦精品-久久精品国产精品青草-久久天天躁夜夜躁狠狠85麻豆

技術員聯盟提供win764位系統下載,win10,win7,xp,裝機純凈版,64位旗艦版,綠色軟件,免費軟件下載基地!

當前位置:主頁 > 教程 > 服務器類 >

docker容器里安裝ssh的具體步驟

來源:技術員聯盟┆發布時間:2017-06-19 12:41┆點擊:

通過命令行安裝

1.pull ubuntu鏡像

docker pull ubuntu:latest

2.啟動并進入bash

docker run -it -d ubuntu:lastest /bin/bash # 查看剛剛運行容器的id docker ps # 在容器中執行bash命令 docker exec -it id /bin/bash

3.安裝openssh-server并啟動

apt-get update apt-get install openssh-server # 啟動之前需手動創建/var/run/sshd,不然啟動sshd的時候會報錯 mkdir -p /var/run/sshd # sshd以守護進程運行 /usr/sbin/sshd -D & # 安裝netstat,查看sshd是否監聽22端口 apt-get install net-tools netstat -apn | grep ssh

如果已經監聽22端口,說明sshd服務啟動成功

4.ssh登陸

# 生成ssh key ssh-keygen -t rsa # 修改sshd-config允許root登陸 sed -i 's+PermitRootLogin prohibit-password+PermitRootLogin yes' /etc/ssh/sshd-config

修改完sshd-config之后需要重啟sshd服務

// 找到pid ps -aux | grep ssh kill -9 pid /usr/sbin/sshd -D &

查看容器ip

ifconfig

在主機上進行登陸

ssh root@ip

就可以登錄成功了,但是注意這里是docker容器的宿主機才能登陸成功,如果需要其他機器登陸,可以在啟動docker的時候進行端口映射

// 11122宿主機端口,22為容器端口 docker run -it -p 11122:22 // 在其他機器上可以使用以下命令登陸,假設宿主機ip為192.168.1.101 ssh -p 11122 root@192.168.1.101

5.保存容器

// 把id為id的容器保存 docker commit id sshd:ubuntu // 停止容器 docker stop id

通過dockerfile

# 以最新的Ubuntu鏡像為模板 FROM ubuntu:latest // 將本目錄下的sources.list作為容器的一個文件 ADD sources.list /root/sources.list // 使用阿里Ubuntu源,更新快 RUN cp /root/sources.list /etc/apt/sources.list.d/aliyun.list RUN apt-get update RUN apt-get install -y openssh-server RUN apt-get install -y net-tools RUN apt-get install -y vim RUN mkdir -p /var/run/sshd RUN mkdir -p mkdir/root/.ssh/ // 修改root密碼,便于遠程登錄 RUN echo root:123456 | chpasswd // 將key生成在指定文件內 RUN ssh-keygen -q -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key -P '' -N '' // 配置ssh可以使用root登陸 RUN sed -i 's/PermitRootLogin without-password/PermitRootLogin yes/' /etc/ssh/sshd_config // 開放22端口 EXPOSE 22 CMD /usr/sbin/sshd -D &

根據Dockerfile build鏡像

docker build -t nginx:ubuntu .