《Dokcer的使用》(四) 实战之Nginx+静态网站部署

news/2024/5/10 23:20:41/文章来源:https://blog.csdn.net/qq_23039185/article/details/109576552

1、下载Centos的基础镜像

     说明:基础镜像是所有自定义Dockerfile镜像必须引用的,一般基于centos、ubuntu等操作系统镜像

#docker pull下载centos的latest版本,也可指定版本docker pull centos:标签名
docker pull centos

2、创建Dockerfile构建目录及Dockerfile文件

#1、创建Dockerfile构建环境目录
mkdir static-website#2、进入构建目录
cd static-website#3、创建Dockerfile文件
touch Dockerfile#4、编辑Dockerfile文件(第3步可忽略,也可直接vi Dockerfile 会自动创建好文件)
vi Dockerfile

3、配置Dockerfile文件内容如下:

#1、引入centos基础镜像
FROM centos:latest#2、说明作者信息
MAINTAINER Luoy "luoy@163.com"#3、设置环境变量,记录上次修改日期(根据自身情况,此步骤可忽略)
ENV UPDATE_DATE 2020-11-09#4、下载安装nginx
RUN yum install -y nginx#5、添加自定义的nginx配置文件到镜像中
ADD nginx/website.conf /etc/nginx/conf.d/
ADD nginx/nginx.conf /etc/nginx/nginx.conf#6、开放80端口
EXPOSE 80

4、Dockerfile配置完成后,接下来我们添加自定义的nginx配置文件:
     

配置文件分为website.conf与nginx.conf

 1、website.conf:用于静态网站相关配置。

 2、nginx.conf:nginx的主配置文件,这里主要是将nginx的运行模式(daemon off)改为前台运行,防止nginx以后台进程模式运行,导致容器停止运行。

4-1、当前static-website目录下创建nginx目录

#1、在当前Dockerfile的构建目录下创建nginx目录
mkdir nginx

4-2、配置website.conf内容如下

server{listen 0.0.0.0:80;server_name localhost; #也可配置为域名location /{root /home/static;index website/index.html;  }location /website{root /home/static;index index.html;  }}

4-3、配置nginx.conf内容如下(此配置只是为了演示效果,主要在原始的nginx.conf文件里添加了daemon off 配置,其他配置未做更改)

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;#主要添加此配置 daemon off;
daemon off;include /usr/share/nginx/modules/*.conf;events {worker_connections 1024;
}http {log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';access_log  /var/log/nginx/access.log  main;sendfile            on;tcp_nopush          on;tcp_nodelay         on;keepalive_timeout   65;types_hash_max_size 2048;include             /etc/nginx/mime.types;default_type        application/octet-stream;include /etc/nginx/conf.d/*.conf;server {listen       80 default_server;listen       [::]:80 default_server;server_name  _;root         /usr/share/nginx/html;include /etc/nginx/default.d/*.conf;location / {}error_page 404 /404.html;location = /40x.html {}error_page 500 502 503 504 /50x.html;location = /50x.html {}}
}

5、构建镜像

#进入static-website目录,执行docker build
docker build -t="luoy/website:v1" .

6、等待构建成功

7、查看镜像:docker images 

8、启动镜像

#启动镜像
#-d 以守护进程模式运行该容器
#-v /home/static:/home/static 将宿主机静态网址目录映射到容器中,使容器可访问到公共的静态网址
#-p 80:80 将主机的80端口映射到容器的80端口
#luoy/website:v1 镜像用户名/仓库名:标签
#nginx 启动nginx
docker run -d -v /home/static:/home/static -p 80:80 luoy/website:v1 nginx

9、查看运行的容器:docker ps 

10、开放宿主机的80端口,使外网环境访问到静态网址

10-1、腾讯云服务器开放端口步骤:安全组-》入站规则-》添加80端口

10-2、私有服务器/本地服务器开放端口步骤:

#开放80端口
firewall-cmd --add-port=80/tcp --permanent #重启防火墙
systemctl restart firewalld

11、到此所有配置完成,通过浏览器访问nginx服务器IP或域名即可访问到静态网站

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_869050.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Web开发一】Centos7.4 python3.6虚拟环境,部署Django框架,实现网站的访问

Django是一个非常不错的Web开发的框架,这里涉及到的是一个基础的使用。具体的配置是python3.6版本,Django是1.11.6版本。Pycharm是2017.3社区版本。这里要实现的是Django中部署网页,然后实现访问。 一、部署python3.6虚拟环境(避…

【Web开发二】Django框架中部署一套投票网站

Django原理,URLS路由接收到客户端访问的请求------>view视图函数进行请求的处理-------->models模型(数据库)进行数据的处理--------->view视图函数进行数据的处理--------->template模板(HTML)进行数据的…

大型网站技术架构:核心原理与案例分析----Memcached分布式缓存集群的访问模型剖析

前提: 本文是基于memcached1.4版本的,之前的版本与该版本在一些地方是不一样的(eg.《memcached全面剖析》的memcached1.2的内存管理方式就与1.4不同)在看本文之前,最好先看一下memcached在实际开发中怎么进行操作的&a…

【转】nbsp;实现网站的中英文转换

1.新建一个asp.net web应用程序 2.创建的项目如下图所示 3.右击web项目名称,添加一个全局资源文件夹"app_GlobalResources" ,这个是asp.net 2.0特有的 4.右击"app_GlobalResources"文件夹,添加两个资源文件: language.resx(简体资源文件) 和language.en-u…

【转】ASP.NET网站实现中英文转换…

摘要:随着计算机网络的发展,一些商业机构也开始向国际市场迈进。因此这些商业的机构的网站 也开始面向全世界的用户,要求网站具有多语言的选择,实现本地化。在.NET1.1框架下面,如果你要实现本地化,你可能要…

这个网站他不简单系列(一)低调而强大的DICT.CN

这个网站他不简单系列(一)低调而强大的DICT.CN emilmatthew 08/06/25 OK,闲话少说,我们先看网站:DICT.CN,不知诸位看下来有何感觉?是啊,不就是个在线词典吗?是啊,我也觉得不就是个在…

[8.18]东西放久了会发霉的,网站也一样,拿出来晒晒~~~

这个网站叫DOUPACK(中文名称叫豆瓣包裹),主要的意图就是可以在屏幕上拖动你的豆瓣小组,组成一个你喜欢的样子.感觉最后会变成一个恶搞度>实用度的应用.由于整个用户系统都要弄下来,所以制作时间有些长... 去年11月开始做的,原先是利用业余时间做的,弄了4个月,还差一个月的工…

web2.0网站的四大特性简述

本文文字内容转自天极网: http://homepage.yesky.com/216/2634716.shtml 本文图片转自: http://web2.wsj2.com/architectures_of_participation_the_next_big_thing.htm 收集和学习了大家对于Web2.0特性的看法,加上这几天的思考,整理我对于Web2.0到底是…

Gin + GoCv + Element 简单搭建图片风格迁移网站

成品效果 输入:jpg/png 格式图片 输出:风格迁移后的图片 目录结构 # tree├─controller // 控制器 ├─models // 风格迁移模型 │ ├─eccv16 │ └─instance_norm ├─router // 路由转发 ├─static // 静态资源 ├─sys // 系统配置 ├─tem…

手机访问网站 点击手机号码直接拨打电话

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴! 手机访问网站,点击手机号码直接拨打电话: …

使用IntelliJ IDEA开发SpringMVC网站

转自https://my.oschina.net/gaussik/blog/385697 1.安装jdk,maven和tomcat 2.创建maven web项目 Create New Project 最后生成结果如下图,注意左侧部分 上侧部分选择Auto-Import就好 如果生成过慢,可以参看下面两篇文章: 文章1&a…

回首10年前的30个最受欢迎的网站

10年前的Web技术还比较落后,浏览器功能也非常有限,你知道现在最受欢迎的这些网站,在10年前甚至更早的时候是什么样子吗?文中为你揭示包括Google、雅虎、eBay、维基百科等网站的老面孔: 1. Google (1998) Google (1998…

让你的Onedrive网盘秒变网站,文件展示,直连下载,视频在线播放

之前我们介绍了免费的5TB的Onedrive网盘,不但能做本地硬盘使用,还能扩展你的硬盘,今天我们就来介绍一下另一款Onedrive网盘的神器OneIndex,这是针对Onedrive网盘的一个开源程序。可以将Onedrive存储的文件展示,直连下载。视频还能…

LAMP网站架构方案分析

LAMP(Linux-Apache-MySQL-PHP)网站架构是目前国际流行的Web框架,该框架包括:Linux操作系统,Apache网络服务器,MySQL数据库,Perl、PHP或者Python编程语言,所有组成产品均是开源软件&a…

如何更改VS2005调试网站的浏览器类型

选择网站根目录,右键单击 选择“浏览方式” 在这里就可以设置浏览器的类型了 转载于:https://www.cnblogs.com/qishichang/archive/2007/11/25/971588.html

微软官宣IE将“退役”,老网站如何 实现在Chrome、Firefox中兼容运行?

问题 美国微软公司为了推广其Chromium内核的Edge浏览器,在2021年5月19日突然宣布,自2022年6月15日起,绝大多数版本的Windows 10系统将不再支持IE浏览器,因此IE即将彻底退出互联网的舞台。具体来说微软决定将不再支持Windows 10所…

Python必去的6个网站

1.The Hitchhiker’s Guide to Python。 equests作者创建的网站,对于Python的方方面面都有指导作用 2. Python 3 Module of the Week 和 Python Module of the Week。 Python 3 Module of the Week系列文章,每篇介绍一个 Python 标准库的使用 3. …

你的网站被流量冲崩了吗?稳住!ab来帮你了

【来源】 ab 全称 Apache Benchmar , 顾名思义是Apache提供的一种性能测试工具。主要作用是检测web服务每秒可以处理多少个请求。它可以用于apache、IIs、tomcat、nginx等服务器的简单压力测试 【语法】 格式:ab [options] path 其中options参数常用有以下&#xf…

推荐大家研究一个网站tineye.com

http://www.tineye.com/,这个站点做得很有想法,详细体验我过几天发出,有兴趣的朋友可以先看看。 刚刚用这个站点上传了我硕士毕业的标准照,回顾了那段意气奋发的年代。