快读创建虚拟机
使用我编辑的镜像(688M)
docker run -itd --name=test03 -p 5523:22 registry.cn-beijing.aliyuncs.com/actanble/centos7:sshd /usr/sbin/sshd -D
使用人家的Ubuntu镜像(200M)
docker run -itd --name=test07 -p 5527:22 registry.cn-beijing.aliyuncs.com/actanble/ubuntu-sshd
我的centos镜像已经加了163,aliyun等地方的源,用的centos7版本, ubuntu的干净的默认源。
自己搭建的话
From centos:7 # docker pull centos:7 && docker run -itd --name=test -P 10022:22 centos:7 bash
COPY /etc/yum.repos.d/ /etc/ ## docker copy /etc/yum.repos.d/ /etc/
RUN yum -y update ## docker exec -it test yum -y update
COPY install_sshd.bash /
RUN /bin/bash install_sshd.bash
// command = [/usr/sbin/sshd -D]
分配CPU内存和大小等
docker run --rm --name test01 --cpu-cpus 1 --cpu-quota=50000 --cpu-period=50000 test
参考
补充
部署 SSHD 服务(install_sshd.bash)
#!/bin/bash
yum -y update
yum -y install openssh openssh-clients openssh-server openssh-askpass
ssh-keygen -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key
ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ""
ssh-keygen -t dsa -f /etc/ssh/ssh_host_ed25519_key
差不多就是这样了,Dockerfile 可以自己去写; 这个就是创建多个虚拟机的方式。如果要更改端口,那么就关闭容器,修改对应的启动配置。
如果要修改内存是 update; 如果要使用容器中的服务,让宿主机或者外网中的对象访问, 那么做一个端口转发即可。详情请参阅ssh 内网穿透。