说明:我们很多都需要新系统来测试一些东西,如果没多的VPS
服务器的话,就很蛋疼了。这时候我们可以在仅有的服务器上使用Docker
部署一个新系统来供我们测试,测试完再直接清空容器,而不会影响到服务器本身,很方便。话说好像可以用这个方法在一个VPS
上部署很多个类似NAT
小鸡?只是与真NAT
不同的是资源全部共享,一般玩玩还是可以的。这里就分享个由ilemonrain博主制作的CentOS
镜像。
镜像
1、镜像说明
此镜像基于CentOS
官方镜像制作而成,集成OpenSSH-Server
、OpenSSH-Client
、initscripts
(可以使用service
命令)、EPEL
镜像源、wget
、passwd
、tar
、unzip
,满足最低运行环境需求,如果其他需要,请自行使用yum install
进行安装。
受制于systend
在Docker
上的兼容性,CentOS 7.x
系统将无法使用systemd
相关程序 (如systemctl
,service
等),如果后台启动服务的需要,请使用CentOS 6.x
镜像,(默认拉取的镜像为CentOS 6.9
)。
推荐使用最新的镜像(CentOS 6.9
与CentOS 7.4
),受制于Docker
本身机制,无法在yum update
升级系统版本后reboot
(重启)完成升级。所以除非特殊需要,否则建议你使用最新镜像,避免很多问题。
2、镜像标签
CentOS 7.4.1708 (7.4, 7.4.1708, 7)
CentOS 7.3.1611 (7.3, 7.3.1611)
CentOS 7.2.1511 (7.2, 7.2.1511)
CentOS 7.1.1503 (7.1, 7.1.1503)
CentOS 7.0.1406 (7.0, 7.0.1406)
CentOS 6.9 (6.9, 6, latest)
CentOS 6.8 (6.8)
CentOS 6.7 (6.7)
CentOS 6.6 (6.6)
安装
1、安装Docker
#CentOS 6
rpm -iUvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum update -y
yum -y install docker-io
service docker start
chkconfig docker on
#CentOS 7、Debian、Ubuntu
curl -sSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker
2、拉取CentOS镜像
启动命令:
docker run -d -p 2222:22 --name CentOS-Docker ilemonrain/centos-sshd
参数说明:
-d:以Daemon(后台)模式启动镜像
-p 2222:22:暴露宿主机的2222端口,映射到容器内部的22端口 (SSH)
--name CentOS-Docker:容器名称
ilemonrain/centos-sshd:镜像名称
请按照自己的实际需要,暴露对应的端口。
更多说明:
#如果需要暴露更多的内部端口,可以使用多个-p参数,比如-p 80:80 -p 53:53。如果需要区分协议,请在-p参数后面注明,比如-p 80:80/tcp -p 53:53/udp。
#ilemonrain/centos-sshd镜像默认为CentOS 6.9系统,如果你要安装CentOS 7.4,后面参数则为ilemonrain/centos-sshd:7.4,其它系统以此为参考。
#如果想部署多个CentOS系统容器,则注意将容器名称改成不同的即可!
部署好了后,SSH
登录信息:
用户名:root
密码:centos
请在成功登录SSH
后,立即修改你的SSH
密码,以防止被恶意爆破。