生成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. golang-defer坑的本质

    https://blog.csdn.net/hittata/article/details/77836435

  2. Android测试跑单个包脚本文件

    脚本: adb shell monkey -p 应用包名 --throttle 随机事件间隔 -v -v -v -s 1 --ignore-security-exceptions --kill-pro ...

  3. 【Winform】自定义Messagebox

    1.保持Msgbox的Icon 2.可以追加Checkbox,RadioBOx 下载

  4. Ubuntu 14.04服务器安装及软件配置

    1.安装操作系统,配置root账号,通过sudo设置root的密码 如果使用ubuntu server 14.04,开启root需额外配置 1.开启root远程登录权限 sudo vi /etc/ss ...

  5. Centos6.3 下使用 Tomcat-6.0.43 非root用户 部署 生产环境 端口转发方式

    一.安装JDK环境 方法一. 官方下载链接 http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260 ...

  6. 有人在贴吧问phpmyadmin如何设置插入的时候默认插入1条记录

    在新版phpmyadmin中(我的版本是3.5.1) 插入的时候会提示插入两条,能够方便操作,让你多录入几条数据,如图 然而有人不想要这个界面默认插入两条,如何改为1条或者其他呢? 我审查了这个元素标 ...

  7. Selenium 获取节点信息

    Selenium 可以通过 find_element() 找到指定的节点,Selenium 也提供了相关的方法和属性来直接提取节点信息,如属性.文本等 from selenium import web ...

  8. Android--Led_Demo_APK控制LED灯

    下面代码主要实现接口定义,实现从.so库文件接口函数在JAVA里面的声明:package com.friendlyarm.AndroidSDK; import android.util.Log; pu ...

  9. [Ubuntu] APT - Advanced Packaging Tool 简明指南

    Advanced Packaging Tool,一般简称为apt,是Debian GNU/Linux distribution及其变体版本中与核心库一道处理软件的安装和卸载. Ubuntu是Debia ...

  10. 深入浅出MFC——MFC程序的生死因果(三)

    1. 本章主要目的:从MFC程序代码中检验出一个Windows程序原本该有的程序进入点(WinMain).窗口类注册(RegisterClass).窗口产生(CreateWindow).消息循环(Me ...