生成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. 关于jq ajax封装以及ajax上传Webapi

    jq的ajax完整版本 $(function () {     fileChange(); }); function fileChange() {     $('#fileinput').change ...

  2. Android学习笔记——保存数据到SQL数据库中(Saving Data in SQL Databases)

    知识点: 1.使用SQL Helper创建数据库 2.数据的增删查改(PRDU:Put.Read.Delete.Update) 背景知识: 上篇文章学习了保存文件,今天学习的是保存数据到SQL数据库中 ...

  3. 文件传输协议(FTP,SFTP,SCP)(修改中)

    FTP(File Transfer Protocol):是TCP/IP网络上两台计算机传送文件的协议,FTP是在TCP/IP网络和INTERNET上最早使用的协议之一,它属于网络协议组的应用层.FTP ...

  4. mongodb 3.2.x 启动 Warning 错误处理

    [root@restore1 data1]# mongod --dbpath=/data/data1/mongodb_data/ --directoryperdb ** WARNING: You ar ...

  5. RancherOS(ROS)如何安装到硬盘? 并设置为用户自动登录到系统? -a rancher.autologin=tty1

    RancherOS 安装到硬盘,一般都是通过ssh_authorized_keys 方式. ------------------------------------------- 从第一次认识到这个方 ...

  6. Global.asax的Application_BeginRequest实现url重写无后缀的代码

    本文为大家详细介绍下利用Global.asax的Application_BeginRequest 实现url重写其无后缀,具体核心代码如下,有需求的朋友可以参考下,希望对大家有所帮助 利用Global ...

  7. win8.1的ie11无法打开127.0.0.1和本机IP访问

    解决方法:把ie11安全选项里的启动保护模式对勾去掉!

  8. 在mvc4中多语言建站的实例

    环境:vs2012 asp.net mvc4. 实现方式:resource 资源文件,根据路由规则中Lang参数来判断载入哪种语言方式 在网上找到了相关资料,顺便自己做了个练习,新建工程之类的步骤就免 ...

  9. MVC學習網站

    http://www.cnblogs.com/haogj/archive/2011/11/23/2246032.html

  10. iOS_UITextField 基本操作

    基本操作 UITextField *userNameTextField = [[UITextField alloc] init]; userNameTextField.frame = CGRectMa ...