Dokcer制作nginx镜像,提交镜像至仓库
生成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镜像,提交镜像至仓库的更多相关文章
- [Linux] - Docker制作nginx+php
使用Docker制作nginx+php的镜像,这里的镜像是centos + nginx 1.9.7 + php 5.6.14 首先下载到nginx和php: nginx-1.9.5.tar.gz 下载 ...
- Docker将容器制作成镜像并提交到远程仓库
Docker将容器制作成镜像并提交到远程仓库 步骤如下 先在dockerhub上创建一个自己的用户https://hub.docker.com/.或者在阿里云也可以. 2. 然后先创建一个空的镜像名. ...
- Docker 制作Nginx镜像
参考文章:https://www.jianshu.com/p/dc4cd0547d1e 镜像的制作方式有两种,一种是下载别人的镜像之后再制作成自己的镜像,一种是从头开始制作自己的镜像 第一种,下载别人 ...
- 制作nginx+php的docker镜像方法
制作nginx+php的docker镜像方法一.准备安装的工具工具:docker-17.06.0-ce.nginx-1.13.2.PHP-5.5.38 .supervisor配置思路:1.安装dock ...
- 制作自己的docker镜像
制作自己的Docker镜像主要有如下两种方式: 1.使用docker commit 命令来创建镜像 通过docker run命令启动容器 修改docker镜像内容 docker commit提交修改的 ...
- docker之常用命令、自定制镜像、公(私)仓库的上传和下载
一.docker命令 1.参数和命令汇总 1. 参数 Options: --config=~/.docker Location of client config files #客户端配置文件的位置 - ...
- 通过容器提交镜像(docker commit)以及推送镜像(docker push)笔记
在本地创建一个容器后,可以依据这个容器创建本地镜像,并可把这个镜像推送到Docker hub中,以便在网络上下载使用. 查看镜像 [root@docker-test1 ~]# docker image ...
- Docker构建nginx+uwsgi+flask镜像(二)
Dockerfile搭建环境并打包应用 在上一章Docker构建nginx+uwsgi+flask镜像(一)的学习中,我们学会用命令行一句一句在alpine环境中搭建nginx+uwsgi+flask ...
- Docker 基本概念(三)-生命周期详解(镜像、容器、仓库)
Docker三大组件:镜像.容器.仓库. 一.镜像 1 从仓库获取镜像 #一.从仓库获取镜像,帮助命令:docker pull -help 命令:docker pull [选项] [docker R ...
随机推荐
- 创建 React-Native 工程时,如何指定特定的 React-Native 版本
react-native 可能会出现一种情况,就是版本最高的可能出现有些东西不太稳定,这时候要用到旧的版本怎么办?就可以用以下方法创建项目. 0. 原因 创建新的 React-Native (以下简称 ...
- 网页CSS常用中英文字体收集
Windows的中文字体: 黑体:SimHei 宋体:SimSun 新宋体:NSimSun 仿宋:FangSong 楷体:KaiTi 仿宋_GB2312:FangSong_GB2312 楷体_GB23 ...
- Sublime的插件Color Highlighter的安装方法
ColorHighlighter是一个显示选中颜色代码的视觉颜色的插件.如果您选择“# fff“,它将向您展示白色.ColorHighlighter支持所有CSS颜色格式,如Hex,RGB,HSL,H ...
- while 1要小心
之前判断一个接口的返回,一定约定好了是返回retcode 1或者retcode 0,就用的这个判断,但是接口挂了的时候,一直返回未登录,找了很长时间为什么cpu一直消耗那么高. 使用wihle 1时候 ...
- 大杂烩 -- Iterator 和 Iterable 区别和联系
基础大杂烩 -- 目录 用Iterator模式实现遍历集合 Iterator模式是用于遍历集合类的标准访问方法.它可以把访问逻辑从不同类型的集合类中抽象出来,从而避免向客户端暴露集合的内部结构. 例 ...
- iOS开发--设置UIButton
1.设置title [btn setTitle: @"search" forState: UIControlStateNormal]; 2.设置字体 //[btn setFont: ...
- iOS开发--libxml/HTMLparser.h file not found 解决方法 (libxml.dylib错误处理)
点击左边项目的根目录,再点击右边的Build Settings,手工输入文字:“Header search paths”,然后单击(或双击,点击弹出面板下面的“+”号进行添加)“ Header sea ...
- 使用一条sql查询多个表中的记录数
方法一: select t1.num1,t2.num2,t3.num3 from (select count(*) num1 from table1) t1, (select count(*) num ...
- vmware下虚拟机不能上网问题解决
这个问题困扰了好久,vmware下装的虚拟机可以通过DHCP获取单独IP,但当用到管控较严格的环境,需要它与主机共享IP时,就不好使了. 今天在一篇文章中找到答案,如下图,windows系统中要启动V ...
- 将百度编辑器ueditor用在easyui中
又一个自己想深爱却一直被拖着的对象--百度编辑器(ueditor) 但终究逃不过再次把它"供奉"起来的宿命,这不今天又得好好研究一下它的使用方法,以免自己今后再次使用时的各种不便- ...