docker启动nginx部署静态页面步骤

    科技2022-07-13  139

    docker启动nginx部署静态页面步骤

    一:拉取nginx镜像

    `docker pull nginx

    二:创建作映射的目录结构

    ~/nginx conf #用于存放主配置配置文件 conf.d #用于存放副配置文件 html #存放静态页面文件 logs #存放日志

    三:配置文件

    在conf下创建nginx.conf作为主配置文件
    user nginx; worker_processes 1; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; 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; keepalive_timeout 65; #gzip on; #加载副配置文件 include /etc/nginx/conf.d/*.conf; }
    在conf.d 下创建80.conf副配置文件
    server { listen 80; # 监听的端口 server_name localhost; # 域名或ip location / { # 访问路径配置 root /usr/share/nginx/html;# 根目录 index index.html index.htm; # 默认首页 } error_page 500 502 503 504 /50x.html; # 错误页面 location = /50x.html { root html; } }

    四:创建、启动容器,配置把上面的目录挂载到容器对应的目录

    在nginx目录下

    docker run -id --name=c_nginx \ -p 80:80 -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf \ -v $PWD/conf.d:/etc/nginx/conf.d \ -v $PWD/logs:/var/log/nginx \ -v $PWD/html:/usr/share/nginx/html \ nginx

    五:把页面放到html目录下,重启容器

    上面是nginx基础使用,下面是进阶用法

    一:虚拟主机

    虚拟主机,也叫“网站空间”,就是把一台运行在互联网上的物理服务器划分成多个“虚拟”服务器。虚拟主机技术极 大的促进了网络技术的应用和普及。同时虚拟主机的租用服务也成了网络时代的一种新型经济形式

    1.创建容器时开启多个端口

    docker run -id --name=c_nginx \ -p 80:80 -p 81:81 -p 82:82 -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf \ -v $PWD/conf.d:/etc/nginx/conf.d \ -v $PWD/logs:/var/log/nginx \ -v $PWD/html:/usr/share/nginx/html \ nginx

    2.端口绑定

    在conf.d下增加port.conf配置文件

    server { listen 81; # 监听的端口 server_name localhost; # 域名或ip location / { # 访问路径配置 root /usr/share/nginx/index;# 根目录 index index.html index.htm; # 默认首页 } error_page 500 502 503 504 /50x.html; # 错误页面 location = /50x.html { root html; } } server { listen 82; # 监听的端口 server_name localhost; # 域名或ip location / { # 访问路径配置 root /usr/share/nginx/regist;# 根目录 index regist.html; # 默认首页 } error_page 500 502 503 504 /50x.html; # 错误页面 location = /50x.html { root html; } }

    3.把页面放到/usr/share/nginx/regist和/usr/share/nginx/index目录下(和上面配置一致)(可以用docker cp命令),重启docker

    二:反向代理

    反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的 服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向 代理服务器。

    1.创建tomcat目录,并进入tomcat目录创建容器

    docker run -id --name=c_tomcat \ -p 8080:8080 \ -v $PWD:/usr/local/tomcat/webapps \ tomcat

    2.在conf.d目录下新增proxy.conf配置文件

    upstream tomcat-kkb{ server 192.168.220.12:8080; #自己的tomcat容器地址 } server { listen 80; # 监听的端口 server_name localhost; # 域名或ip location / { # 访问路径配置 # root index;# 根目录 proxy_pass http://tomcat-kkb; index index.html index.htm; # 默认首页 } }

    三:负载均衡:

    (分摊到多个操作单元上执行)

    1.创建多个tomcat容器,这里端口分别为8080,8081,8082

    2.在conf.d目录下新增lb.conf配置文件

    upstream tomcat-huike { server 192.168.220.12:8080; server 192.168.220.12:8081 weight=2; #可添加权重 server 192.168.220.12:8082; } server { listen 80; # 监听的端口 server_name localhost; # 域名或ip location / { # 访问路径配置 # root index;# 根目录 proxy_pass http://tomcat-huike; index index.html index.htm; # 默认首页 } error_page 500 502 503 504 /50x.html; # 错误页面 location = /50x.html { root html; } }
    Processed: 0.011, SQL: 8