1. 下载ubuntu模板
这里以ubuntu14.04 为例,从openvz下载一个ubuntu14.04的模板
wget http://download.openvz.org/template/precreated/ubuntu-14.04-x86_64.tar.gz
2. 从本地镜像import镜像
cat ubuntu-15.10-x86_64-minimal.tar.gz |docker import - ubuntu:base
-
或者
-
使用国内的 daocloud 的仓库
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://cb340bea.m.daocloud.io
3. 进入虚拟机
docker run -t -i ubuntu:latest /bin/bash
3.1 更新
apt-get update
3.2 安装supervisor服务
apt-get install supervisor cd /etc/supervisor/ cp supervisord.conf conf.d/ cd conf.d/ vi supervisord.conf
-
修改该文件如下
; supervisor config file [unix_http_server] file=/var/run/supervisor.sock ; (the path to the socket file) chmod=0700 ; sockef file mode (default 0700) [supervisord] logfile=/var/log/supervisor/supervisord.log ; (main log file;default $CWD/supervisord.log) pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid) childlogdir=/var/log/supervisor ; ('AUTO' child log dir, default $TEMP) nodaemon=true ;(修改该软件的启动模式为非daemon,否则docker 在执行的时候会直接退出) [include] files = /etc/supervisor/conf.d/*.conf [program:sshd] command = /usr/sbin/sshd -D ;(添加ssh服务)
3.3 配置ssh服务
-
创建ssh的运行目录
mkdir /var/run/sshd
-
更改root密码 passwd
passwd 123456
-
允许root登陆
vi /etc/ssh/sshd_config 修改下面2个参数允许
[没安装ssh的话先安装:apt-get install openssh-server]
PermitRootLogin yes UsePAM no
3.4退出docker
exit
3.5 commit最新的Ubuntu:base
docker commit f3c8 ubuntu:base
3.5 根据Dockerfile开放22端口
-
新建一个目录
mkdir ubuntu touch ubuntu/Dockerfile vi ubuntu/Dockerfile
-
添加如下内容
FROM ubuntu:base EXPOSE 22 CMD ["/usr/bin/supervisord"]
-
然后从这个文件创建image
docker build -t ubuntu:base ubuntu/
3.6 运行基础镜像
docker run -p 301:22 -d --name test ubuntu:base /usr/bin/supervisord
ssh 到301端口
ssh root@192.168.99.100 -p 301