生成Dockerfile

FROM docker.io/hagaico/centos-base-6.5:latest

MAINTAINER yatho yatho@163.com

ENV DEBIAN_FRONTEND noninteractive

WORKDIR /usr/local/src

RUN yum -y update && \
yum install -y wget gcc make pcre-devel autoconf automake zlib zlib-devel openssl openssl-devel gcc gcc-c++ glibc glibc-common telnet tcl dos2unix sysstat make openssh-clients unzip && \
wget http://nginx.org/download/nginx-1.12.2.tar.gz && \
wget ftp://ftp.openssl.org/source/old/1.0.2/openssl-1.0.2k.tar.gz ADD ./pcre-8.41.tar.gz /usr/local/src/
ADD ./libssl.so.1.0.1e /lib64/ RUN tar -zxvf nginx-1.12.2.tar.gz && \
tar -zxvf openssl-1.0.2k.tar.gz -C /usr/local/src WORKDIR /usr/local/src/nginx-1.12.2 RUN ./configure --prefix=/usr/local/nginx --with-pcre=/usr/local/src/pcre-8.41 --with-http_stub_status_module --with-stream --with-http_ssl_module --with-http_realip_module --with-openssl=/usr/local/src/openssl-1.0.2k && \
make && \
make install && \
echo "daemon off;">>/usr/local/nginx/conf/nginx.conf ADD run.sh /usr/local/sbin/run.sh
RUN chmod 755 /usr/local/sbin/run.sh CMD ["/usr/local/sbin/run.sh"] EXPOSE 22
EXPOSE 80
EXPOSE 443

  生成run.sh脚本

#!/bin/bash
/usr/sbin/sshd &
/usr/local/nginx/sbin/nginx

  目录结构

  

[root@vm-50-151 nginx]# pwd
/root/docker/Docker_file/nginx
[root@vm-50-151 nginx]# ll
total 8620
-rw-r--r-- 1 root root 1160 Nov 15 13:43 Dockerfile
-rw-r--r-- 1 root root 449808 Nov 15 11:01 libssl.so.1.0.1e
-rw-r--r-- 1 root root 981687 Nov 15 11:01 nginx-1.12.2.tar.gz
-rw-r--r-- 1 root root 5309236 Nov 15 11:01 openssl-1.0.2k.tar.gz
-rw-r--r-- 1 root root 2068775 Nov 15 11:01 pcre-8.41.tar.gz
-rw-r--r-- 1 root root 57 Nov 15 11:01 run.sh

  构建生成镜像

[root@vm-50-151 nginx]# docker build -t yatho_nginx:1.0.0 .

  启动镜像测试镜像是否OK

[root@vm-50-151 nginx]# docker run -d --name nginx_test -P yatho_nginx:1.0.0

  

[root@vm-50-151 nginx]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
14330de27f9d yatho_nginx:1.0.1 "/usr/local/sbin/run." 40 minutes ago Up 40 minutes 0.0.0.0:32770->22/tcp, 0.0.0.0:32769->80/tcp, 0.0.0.0:32768->443/tcp nginx_test

  给镜像打tag

[root@vm-50-151 nginx]# docker tag yatho_nginx:1.0.0 yatho92/yatho_nginx_centos6.5:1.0.0

  提交至仓库

[root@vm-50-151 nginx]# docker push yatho92/yatho_nginx_centos6.5:1.0.0

  

Dokcer制作nginx镜像,提交镜像至仓库的更多相关文章

  1. [Linux] - Docker制作nginx+php

    使用Docker制作nginx+php的镜像,这里的镜像是centos + nginx 1.9.7 + php 5.6.14 首先下载到nginx和php: nginx-1.9.5.tar.gz 下载 ...

  2. Docker将容器制作成镜像并提交到远程仓库

    Docker将容器制作成镜像并提交到远程仓库 步骤如下 先在dockerhub上创建一个自己的用户https://hub.docker.com/.或者在阿里云也可以. 2. 然后先创建一个空的镜像名. ...

  3. Docker 制作Nginx镜像

    参考文章:https://www.jianshu.com/p/dc4cd0547d1e 镜像的制作方式有两种,一种是下载别人的镜像之后再制作成自己的镜像,一种是从头开始制作自己的镜像 第一种,下载别人 ...

  4. 制作nginx+php的docker镜像方法

    制作nginx+php的docker镜像方法一.准备安装的工具工具:docker-17.06.0-ce.nginx-1.13.2.PHP-5.5.38 .supervisor配置思路:1.安装dock ...

  5. 制作自己的docker镜像

    制作自己的Docker镜像主要有如下两种方式: 1.使用docker commit 命令来创建镜像 通过docker run命令启动容器 修改docker镜像内容 docker commit提交修改的 ...

  6. docker之常用命令、自定制镜像、公(私)仓库的上传和下载

    一.docker命令 1.参数和命令汇总 1. 参数 Options: --config=~/.docker Location of client config files #客户端配置文件的位置 - ...

  7. 通过容器提交镜像(docker commit)以及推送镜像(docker push)笔记

    在本地创建一个容器后,可以依据这个容器创建本地镜像,并可把这个镜像推送到Docker hub中,以便在网络上下载使用. 查看镜像 [root@docker-test1 ~]# docker image ...

  8. Docker构建nginx+uwsgi+flask镜像(二)

    Dockerfile搭建环境并打包应用 在上一章Docker构建nginx+uwsgi+flask镜像(一)的学习中,我们学会用命令行一句一句在alpine环境中搭建nginx+uwsgi+flask ...

  9. Docker 基本概念(三)-生命周期详解(镜像、容器、仓库)

    Docker三大组件:镜像.容器.仓库.  一.镜像 1 从仓库获取镜像 #一.从仓库获取镜像,帮助命令:docker pull -help 命令:docker pull [选项] [docker R ...

随机推荐

  1. 创建 React-Native 工程时,如何指定特定的 React-Native 版本

    react-native 可能会出现一种情况,就是版本最高的可能出现有些东西不太稳定,这时候要用到旧的版本怎么办?就可以用以下方法创建项目. 0. 原因 创建新的 React-Native (以下简称 ...

  2. 网页CSS常用中英文字体收集

    Windows的中文字体: 黑体:SimHei 宋体:SimSun 新宋体:NSimSun 仿宋:FangSong 楷体:KaiTi 仿宋_GB2312:FangSong_GB2312 楷体_GB23 ...

  3. Sublime的插件Color Highlighter的安装方法

    ColorHighlighter是一个显示选中颜色代码的视觉颜色的插件.如果您选择“# fff“,它将向您展示白色.ColorHighlighter支持所有CSS颜色格式,如Hex,RGB,HSL,H ...

  4. while 1要小心

    之前判断一个接口的返回,一定约定好了是返回retcode 1或者retcode 0,就用的这个判断,但是接口挂了的时候,一直返回未登录,找了很长时间为什么cpu一直消耗那么高. 使用wihle 1时候 ...

  5. 大杂烩 -- Iterator 和 Iterable 区别和联系

    基础大杂烩 -- 目录 用Iterator模式实现遍历集合  Iterator模式是用于遍历集合类的标准访问方法.它可以把访问逻辑从不同类型的集合类中抽象出来,从而避免向客户端暴露集合的内部结构. 例 ...

  6. iOS开发--设置UIButton

    1.设置title [btn setTitle: @"search" forState: UIControlStateNormal]; 2.设置字体 //[btn setFont: ...

  7. iOS开发--libxml/HTMLparser.h file not found 解决方法 (libxml.dylib错误处理)

    点击左边项目的根目录,再点击右边的Build Settings,手工输入文字:“Header search paths”,然后单击(或双击,点击弹出面板下面的“+”号进行添加)“ Header sea ...

  8. 使用一条sql查询多个表中的记录数

    方法一: select t1.num1,t2.num2,t3.num3 from (select count(*) num1 from table1) t1, (select count(*) num ...

  9. vmware下虚拟机不能上网问题解决

    这个问题困扰了好久,vmware下装的虚拟机可以通过DHCP获取单独IP,但当用到管控较严格的环境,需要它与主机共享IP时,就不好使了. 今天在一篇文章中找到答案,如下图,windows系统中要启动V ...

  10. 将百度编辑器ueditor用在easyui中

    又一个自己想深爱却一直被拖着的对象--百度编辑器(ueditor) 但终究逃不过再次把它"供奉"起来的宿命,这不今天又得好好研究一下它的使用方法,以免自己今后再次使用时的各种不便- ...