码迷,mamicode.com
首页 > 其他好文 > 详细

制作Docker镜像

时间:2015-10-05 11:48:52      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:

Docker所倡导的方向是Paas, 即每个容器都应该是一个产品,精简才是核心.

所以很多基础镜像启动起来后, 一个服务进程都没有.

基于每个容器都应该是一个产品的宗旨, 只要提供一个端口即可提供服务, 所以docker默认不提供固定ip的解决方案.

也就是说, 所有容器都是没有ip的, 由宿主机开启端口, 然后映射到某个容器上.


就目前为止, 我采用的还是原来的套路来使用docker(固定ip, 每个容器都至少监听22端口和自己提供服务的端口).


下面是制作镜像的过程:

# 制作一个提供sshd服务的容器, 并且该镜像要足够强健能够满足多种应用场景.
[root@localhost ~]# mkdir -p build_dockerfile/sshd
[root@localhost ~]# cd /root/build_dockerfile/sshd


# run.sh 起到的作用优点类似原系统中的 /etc/rc.local的作用, 即将想要
# 开机启动的服务预先写入到该文件中, 然后再制作镜像, 因为制作镜像过程中
# 需要将该文件当作post-install去运行的, 而且每次启动镜像的时候都会运行.
[root@localhost sshd]# vim run.sh
#!/bin/bash
/usr/sbin/sshd -D


# 编写一个dockerfile
[root@localhost sshd]# vim dockerfile
FROM docker.io/centos:7
MAINTAINER zhengtong 330356463@qq.com
RUN mkdir /var/run/sshd -p
RUN echo ‘root:123456‘ | chpasswd
RUN echo "vm.hugetlb_shm_group  = 501" >> /etc/sysctl.conf
RUN yum install wget screen unzip zip bridge-utils bc net-tools vim sysstat mlocate gcc     gcc-c++ glibc-devel libstdc++ libstdc++-devel make dos2unix tar openssl-devel     ncurses-devel epel-release lrzsz nc bzip2-devel ntpdate compat-libstdc++* libXp*     xscreensaver gnome-libs glibc glibc-common pdksh control-center compat-db binutils     openssh*  libaio.so.1* libgcc_s.so.1* glibc*i686 glibc* -y
RUN ssh-keygen -t rsa1 -f /etc/ssh/ssh_host_rsa_key
RUN ssh-keygen -t dsa  -f /etc/ssh/ssh_host_dsa_key
ADD run.sh /run.sh
RUN chmod 777 /run.sh
EXPOSE 22
CMD ["/run.sh"]


# 构建一个新的镜像: 含开启后自动启动ssh服务的镜像
[root@localhost sshd]# docker build -t centos:sshd .


# 制作完成后可以查看镜像库中现在的情况.
[root@localhost 01_yumed]# docker images
REPOSITORY        TAG          IMAGE ID      CREATED               VIRTUAL SIZE
centos            sshd        e775e34475b8   2 minutes ago         853.4MB
docker.io/centos  7           8b44529354f3   4 minutes ago         202.6 MB


备注: 可以将多个服务启动的命令写入run.sh文件中,然后再制作镜像, 这样的话这个镜像就不仅仅是提供sshd服务而已了.

制作Docker镜像

标签:

原文地址:http://my.oschina.net/u/2452965/blog/513545

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!