【随笔记】Ubuntu 14安装docker
Ubuntu14 安装Docker记录
安装linux-iamge-extra-*的kernel包。这个包允许你使用aufs存储驱动。
~$ sudo apt-get install linux-image-extra-$(uname -r) linux-image-extra-virtual
系统版本ubuntu 14.04
安装docker
apt-get install docker.io
安装JDK
这里安装的是openjdk
apt-get install software-properties-common python-software-properties
add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-8-jdk
Docker1.6.2使用pipework分配IP
添加网桥
先安装两个工具,然后开始需求网桥
apt-get install uml-utilities
apt-get install bridge-utils
增加一个虚拟网桥br0
root@kvm-host:~# brctl addbr br0
在br0中添加一个接口eth0
root@kvm-host:~# brctl addif br0 eth0
打开STP协议,否则可能造成环路
root@kvm-host:~# brctl stp br0 on
将eth0的IP设置为0
root@kvm-host:~# ifconfig eth0 0
设置动态给br0配置ip、route等
root@kvm-host:~# dhclient br0
安装Pipework
wget https://github.com/jpetazzo/pipework/archive/master.zip
apt-get install unzip
cp pipework-master/pipework /usr/local/bin/
chmod 777 /usr/local/bin/pipework
- 创建容器并指定无网络模式
none模式docker不会为容器分配IP
docker run -i -d --net=none --name jdk8docker ubuntu:openjdk8 /bin/bash
手动配置指定的IP
pipework 网桥 容器名称 ip@网关
pipework br0 jdk8docker 192.168.113.131@192.168.113.254
开始操作镜像
镜像的导入导出
将镜像导出到文件
docker export cbe3cb7799ed > update.tar
创建一个新静像从基于导出的文件
docker import - update < update.tar
update是一个已经存在的镜像
docker save -o update1.tar update
导入镜像
docker load < update1.tar
编写Dockerfile
FROM ubuntu:14.04
#设置时间和语言环境变量
ENV TZ Asia/Shanghai
ENV LANG zh_CN.UTF-8
#安装ssh服务端openssh-server 和 进程管理工具supervisor
RUN apt-get update && apt-get install -y supervisor && apt-get install -y openssh-server && apt-get clean /
&& apt-get autoclean
RUN mkdir -p /var/log/supervisor
# 修改root密码
RUN echo 'root:root | chpasswd
#允许rootssh 登录
RUN sed -i "s/#PermitRootLogin no/PermitRootLogin yes/g" /etc/ssh/sshd_config
RUN sed -i "s/PermitRootLogin without-password/PermitRootLogin yes/g" /etc/ssh/sshd_config
#创建ssh的启动目录不然ssh不能启动
RUN mkdir /var/run/sshd
#采用进程管理工具实现镜像run时自动启动ssh服务
COPY supervisord.conf /etc/supervisord.conf
#暴露22端口给宿主机
EXPOSE 22
#启动supervisord服务
CMD ["/usr/bin/supervisord"]
构建镜像
docker build -t ubuntu/ssh:1.0 .
docker run -d -p 90:22 --name ssh ubuntu/ssh:1.0
supervisord.conf的内容
[supervisord]
nodaemon=true
[program:sshd]
command=/usr/sbin/sshd -D
autostart=true
autorestart=true
[program:redis]
command=/usr/local/bin/redis-server /etc/redis/redis.conf
IP连接测试
ssh root@宿主机IP -p 90
ssh root@dockerContent
基本执行命令的启动sshd:22
docker run -d -p 100:22 ubuntu:ssh /usr/sbin/sshd -D
还没有评论,来说两句吧...