在Docker下部署Nginx,包括:

  • 部署一个最简单的Nginx,可以通过端口访问默认的网站
  • 设置记录访问和错误日志的路径

以交互模式创建centos容器,如果本地没有镜像,会从仓库获取, 等待即可。

docker run -it centos /bin/bash

进入容器后通过以下命令更新源, 通过yum方式安装nginx服务

 yum update
yum install -y nginx

修改配置文件 nginx.conf

server {
listen ;
server_name 127.0.0.1;
...
}

可以通过命令来加载配置文件

nginx -c /路径/nginx.conf

#可以通过以下命令,来启动,停止,重启 nginx服务
#service nginx start
#service nginx stop
#service nginx restart

exit 退出容器 ,这时需要将刚才我们修改的容器打包成自己的镜像

docker commit -a 'lemon' -m 'mycentos'  容器id  镜像名:v1.0

#通过 docker ps -a 查看所有容器
#上述参数 a 作者名, m 镜像描述
#v1.0代表tag,可以不加

查看新的镜像

docker images

以后台运行的方式启动创建nginx容器,并将容器80端口映射到本机端口

docker run --name nginx_test -p  -d mycentos:v1. nginx -g "daemon off;"

上诉命令参数:

--name 容器名设置为 nginx_test

-p 容器的80端口映射到宿主机上

-d 后台启动

nginx -g "daemon off;"  表示 nginx以前台方式 运行 , 这句非常重要,因为docker前台没有运行的应用,这样的容器,后台启动后,会立即自杀,因为他觉得他没事可做了。

当然也可以通过-v参数挂载本地目录

docker run --name nginx_test -p  -d -v `pwd`/logs:/var/log/nginx mycentos:v1. nginx -g "daemon off;"

参数解释:

-v `pwd`/logs:/var/log/nginx 将容器的/var/log/nginx 目录挂载到 当前目录下的logs文件夹 (没有会自动创建)

通过命令可以看到创建的nginx_test容器

可以看到 宿主机的32778端口映射到容器的80端口

访问32778端口,查看到nginx成功启动

查看当前目录下的 logs文件夹,成功看到 access.log ,error.log

参考: http://blog.csdn.net/meegomeego/article/details/50707532

  

docker搭建nginx的更多相关文章

  1. 如何使用Weave以及Docker搭建Nginx反向代理/负载均衡服务器

    Hi, 今天我们将会学习如何使用 Weave 和 Docker 搭建 Nginx 的反向代理/负载均衡服务器.Weave 可以创建一个虚拟网络将 Docker 容器彼此连接在一起,支持跨主机部署及自动 ...

  2. 基于Docker搭建Nginx图片服务器

    前言 一般开发中,都会把图片上传到一个目录,然后将目录和文件名拼接存储在数据库中,但是,这种方法如果没弄好的话可能有一定的缺陷. 若项目搬迁,即时这台服务器本身还在用,存放在服务器的跟项目相关的图片也 ...

  3. docker 搭建 nginx负载均衡

    本文描述如何在一台机器上搭建nginx负载均衡,我将会启动3个nginx的docker,分别是1台前置nginx负责分发,后面2台负责处理请求. 首先我切换到/usr/local/docker/文件夹 ...

  4. docker 搭建nginx

    docker pull nginx 先用docker 去把镜像拉下来 $ docker run --name tmp-nginx-container -d nginx $ docker cp tmp- ...

  5. 使用 docker 搭建 nginx+php-fpm 环境 (两个独立镜像)

    :first-child{margin-top:0!important}.markdown-body>:last-child{margin-bottom:0!important}.markdow ...

  6. docker搭建nginx+springboot集群

    1.首先准备两个springboot jar包,一个端口设置为8000,一个设置为8080. 2.打包第一个springboot jar包,Dockerfile如下 FROM java:8 VOLUM ...

  7. 在Linux系统下使用Docker以及Weave搭建Nginx反向代理

    Hi, 今天我们将会学习如何使用 Weave 和 Docker 搭建 Nginx 的反向代理/负载均衡服务器.Weave 可以创建一个虚拟网络将 Docker 容器彼此连接在一起,支持跨主机部署及自动 ...

  8. Docker学习之搭建nginx环境

    前言 很久没写随笔了,今天我们来学习一下如何在docker搭建nginx环境吧! 一:下载镜像,使用docker pull拉取最新的nginx镜像 命令:docker pull nginx 查看镜像: ...

  9. 【docker专栏4】使用docker安装nginx提供web服务

    一般学习一项技术,会先用一个最简单的例子或最典型的例子来向大家讲解入门内容,所以此文为大家介绍使用docker安装nginx容器服务.从基础使用的角度来讲,此文几乎涵盖了docker最核心的内容:镜像 ...

随机推荐

  1. Java Internet

    网络通信: 网络通信三要素: IP 协议 端口 TCP: 建立连接,发送速度慢 三次握手协议 UDP: 不需要建立连接,发送速度快 安全性低 a) 使用UDP实现数据的发送 1 创建Socket端点实 ...

  2. Mysql导出表结构、表数据

    导出 (cmd)     1.导出數據库為dbname的表结构(其中用戶名為root,密码為dbpasswd,生成的脚本名為db.sql)    mysqldump -u root -p dbpass ...

  3. mysql Date查询当天、本周,本月,上一个月的数据

      出自:http://www.cnblogs.com/benefitworld/p/5832897.html 今天 select * from 表名 where to_days(时间字段名) = t ...

  4. Js 动态设置DIV日期信息

    HTML代码如下: <div  id="time"> 2013年12月20日 14:49:02 星期五 </div> JS代码如下: window.onlo ...

  5. Redis 在 LINUX 系统下 安装, 启动

    01, 下载  http://www.redis.cn/ ,  这里下再下来的是 redis-4.0.1.tar.gz 这个压缩包 02, 将压缩包放到 linux 系统中,  一般放在 usr/lo ...

  6. leetcode965

    public class Solution { List<int> list = new List<int>(); private void postTree(TreeNode ...

  7. MySQL优化十大技巧

    转自:https://m.2cto.com/database/201701/557910.html MYSQL优化主要分为以下四大方面: 设计:存储引擎,字段类型,范式与逆范式 功能:索引,缓存,分区 ...

  8. VSS SVN GIT SVN 加锁签出

    VSS TFS SVN GIT VSS 两大功能: 1.签出后加锁,别人不能签出,独占签出. 2.在服务端可以查看哪些用户签出了哪些文件. 3.查看所有签出未签入的文件列表,SVN未发现此功能. 缺点 ...

  9. As3.0中的位图(Bitmap/BitmapData)编程

    https://blog.csdn.net/wtuetnsrmh/article/details/12577929

  10. centos7 jenkins 安装

    前提: 安装了 jdk ,我的是jdk8 第一步: https://jenkins.io/download/ 下载 可以下载 rpm文件, 标红处, 也可以下载war包(Generic Java pa ...