基础环境说明

# cat /etc/redhat-release
CentOS release 6.8 (Final)

设置 docker 镜像源#

# yum install -y yum-priorities && rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm && rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

安装 docker-io 和 febootstrap,用来制作centos镜像,生成centos的镜像#

# yum install docker-io -y #安装docker
# service docker start #启动docker
# yum install febootstrap #制作镜像工具

制作CentOS镜像文件 centos6-image 目录#

# febootstrap -i bash -i wget -i yum -i iputils -i iproute -i man -i vim -i openssh-server -i openssh-clients -i tar -i gzip centos6 centos6-image http://mirrors.aliyun.com/centos/6/os/x86_64/

-i : 安装的软件包

centos6 : 系统版本

centos6-image : 生成的目录名称

也可以制作CentOS7的镜像 将地址更换为CentOS7的地址,例如

# febootstrap -i bash -i net-tools -i wget -i yum -i iputils -i iproute -i man -i vim -i openssh-server -i openssh-clients -i tar -i gzip centos7 centos7-image https://mirrors.aliyun.com/centos/7/os/x86_64/

设置ssh 进入镜像的时候直接进入root 目录(如果不做这一步则直接进入到 / 目录)

# cd centos6-image && cp etc/skel/.bash* root/

生成基础镜像 base#

# cd centos6-image && tar -c . |docker import - centos6-base

查看镜像

# docker images

根据基础镜像制作 http 的docker 镜像#

# cat DockerfileFROM centos6-base # 表示以此镜像为基础镜像进行制作
MAINTAINER bamboo # 表示镜像制作者的信息
RUN yum install -y yum-priorities && rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/Packages/e/epel-release-6-8.noarch.rpm && rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
RUN yum install tar gzip vim wget httpd httpd-* -y
RUN sed -i 's/#ServerName www.example.com:80/ServerName www.example.com:80/' /etc/httpd/conf/httpd.conf
EXPOSE 80 # 表示开启的端口号
CMD ["/usr/sbin/httpd","-D","FOREGROUND"] #表示在启动镜像的时候执行的命令 一个Dockerfile只能写一个CMD命令,多个CMD执行最后的那一条
#ENTRYPOINT ["/usr/sbin/httpd","-D","FOREGROUND"] # 和CMD 用法一样

build 镜像#

# cd centos6-image && docker build -t centos6-httpd /root/bamboo
-t 后面跟的是即将生成镜像的名字也就是上面的 centos6-httpd
最后跟的是 Dockerfile的目录,是目录

查看和测试#

# docker images # 查看新生成的镜像centos6-httpd
# docker -d --name http -p 800:80 centos6-http
# docker ps -a # 可以查看到运行的镜像 以及端口映射情况
# 访问 curl http://ip:800 可以看到http默认的欢迎页面

转载于:https://blog.51cto.com/wuyebamboo/2325194

制作 docker 镜像相关推荐

  1. Java Spring Boot 2.0 实战之制作Docker镜像并推送到Docker Hub和阿里云仓库

    内容摘要:大规模集群快速部署Java应用,需要制作Docker镜像,本次课程详细介绍如何制作Java程序的Docker镜像文件,深入解析DockerFile核心参数,以及实践演练把我们制作的Docke ...

  2. mysql sshd_制作Docker镜像之mysqlkeepalivedsshd

    制作Docker镜像之mysql&keepalived&sshd mysql docker keepalived ssh 注:该实验采用的docker版本:Docker version ...

  3. 制作Docker镜像的两种方式

    此文已由作者朱笑天授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 一.使用docker commit命令制作docker镜像 1. pull一个centos6.6的基础镜像, ...

  4. 【记录】利用jar包制作docker镜像

    [记录]利用jar包制作docker镜像 前提说明 创建构建docker文件 构建docker镜像 构建成功后启动容器 前提说明 jar包已上传linux服务器 jar包名称:demo.jar jar ...

  5. docker hub push_如何制作Docker镜像(image)?

    制作Docker镜像一般有2种方法: 使用hub仓库中已有的环境,安装自己使用的软件环境后完成image创建 通过Dockerfile,完成镜像image的创建 下面通过展示具体操作方法: 第一种:使 ...

  6. 龙芯Fedora21平台制作docker镜像,并且解决vi乱码问题

    http://ask.loongnix.org/?/article/81 实验环境   本文的实验都是在龙芯3A3000机器上. 操作系统是loongnix(Fedora21)20170726版本, ...

  7. 用GitHub Actions制作Docker镜像

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 关于GitHub Actions GitHub Act ...

  8. jar包制作Docker镜像

    一.编写Dokcerfile ###FROM 指定该docker镜像运行环境(必须有此docker镜像,此处选择jdk:8) FROM ubuntu_java8:v1 ###将准备的配置文件添加到容器 ...

  9. 在jetson xavier nx上制作docker镜像

    概览: 一.docker简介 二.在jetson xavier nx上制作docker镜像 一.docker简介 用途:对于一项工程,不同的机器都需要单独为其配置环境,且有时配环境是一件相当麻烦的事情 ...

最新文章

  1. Matlab数据的可视化 -- 柱形立体图
  2. Mysql的事务事务的特征事务的隔离级别
  3. python round函数_python中round函数如何使用
  4. 'ascii' codec can't encode characters in position 20-24:ordinal not in range(128)报错根本解决办法
  5. P1833 樱花——混合背包 二进制优化成01背包
  6. C++:12---运算符重载
  7. mxchip EWM3166串口转WIFI AT指令设置
  8. Zbrush 4R7 P3中给类模型怎么快速隐藏
  9. html如何生成条形码,前端如何生成条形码---JsBarcode
  10. AD报错 unknown pin
  11. symbian与uiq开发教程之一-初识symbian(转)
  12. Linux 从零开始部署RocketMQ集群遇到的问题
  13. Java实现三国曹操华容道的游戏
  14. 利用阿里云搭建NFS服务器
  15. windows 7 共享打印机 给 window xp - 1/2
  16. 小满nestjs(第九章 nestjs Session)
  17. CGerberDoc* GetDocument() const; 错误
  18. java实现图片固定长宽的缩放和裁剪
  19. 极光开发者线上沙龙 | 如何高效演进你的验证码
  20. python线程回收_python之线程

热门文章

  1. oracle developer 连接 mysql
  2. 一个两年Java的面试总结
  3. CentOS5.5下SVN部署文档
  4. 大数据上的“大产品”
  5. 用js如何获取file是否存在
  6. java例程练习(多线程[线程同步问题])
  7. 采访实录:黄碟泛滥的市场调查
  8. CAS的三个问题及解决方案
  9. java的网络功能与编程_Java的网络功能与编程(转载)
  10. RabbbitMq 消费端自定义监听