前端服务器部署Nginx +docker + ubuntu的完整过程

 更新时间:2025年11月04日 09:38:05   作者:@cc小鱼仔仔  
Docker是一个开源的容器化平台,可以让你快速构建、测试和部署应用程序,Nginx是一个高性能的Web服务器和反向代理服务器,常用于部署静态网站、负载均衡等场景,这篇文章主要介绍了前端服务器部署Nginx +docker + ubuntu的完整过程,需要的朋友可以参考下

安装解压工具

sudo apt install unzip

安装docker

更新系统包索引和安装依赖

sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin

docker设置开机启动

sudo systemctl enable docker
sudo systemctl start docker

 验证是否安装成功

docker --version

两个包 一个nginx.tar  一个 nginx.config.tar

通过网盘分享的文件:部署文件

链接: https://pan.baidu.com/s/1VPqoKkFplp1XxTmKKByM_A 提取码: 2fib

docker load -i nginx.tar   指定文件目录啊~
docker ps -ef|grep nignx
docker load -i /opt/software/nginx.tar

把nginx.config.tar 上传到:/opt/software/nginx ,在执行tar -zxvf nginx.config.tar

验证镜像

目录下# docker images |grep nginx
nginx         latest    605c77e624dd   3 years ago   141MB

解压后的文件夹目录结构

解压tar包时会有个nginx.conf的文件夹替换为nginx.conf文件。

编写启动脚本

docker run -d \           # -d: 后台运行(detached mode)
  --name nginx \          # 指定容器名为 "nginx"
  --restart always \      # 自动重启策略:总是重启(容器退出时自动重启)
  --privileged \          # 赋予容器特权模式(访问所有设备,更高权限)
  -p 28051:80 \           # 端口映射:主机28051端口 → 容器80端口
  -v /opt/software/nginx/conf:/etc/nginx/conf.d \        # 挂载配置文件目录
  -v /etc/localtime:/etc/localtime \                     # 同步主机时间
  -v /opt/software/nginx/logs:/var/log/nginx \           # 挂载日志目录
  -v /opt/software/nginx/html:/usr/share/nginx/html \    # 挂载网站文件目录
  -v /opt/software/nginx/nginx.conf:/etc/nginx/nginx.conf \  #意思是将主机的文件挂载到容器前者为自己写 后者是地址 挂载主配置文件
  -v /home/data/nignxstatic:/home/data/nignxstatic \     # 挂载静态资源目录
  nginx:latest            # 使用 nginx:latest 镜像

如果有nginx执行docker rm nginx删除一下在创建。

***g.conf的配置简配了一下,具体配置建议了解下配置详情

server {
    listen 80;
    #listen 443 ssl;
    server_name lbs.nginx.conf;
    ssl_session_timeout 5m;
        location @knowledge{
            rewrite ^.*$ /knowledge/index.html last;
        }
     location /temp_screen {
            root /home/data/nignxstatic;
            try_files $uri $uri/ @temp_screen;
            index index.html;
        }
        location @temp_screen {
            rewrite ^.*$ /temp_screen/index.html last;
        }
        location /mapdata {
autoindex on;
            root /home/data/nignxstatic;
            add_header Access-Control-Allow-Origin *;
            add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
            add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization,ri,accesstoken,satoken';
            try_files $uri $uri/ @mapdata;
            index index.html;
        }
 location @mapdata {
            rewrite ^.*$ /mapdata/index.html last;
        }   
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
   location @router {
        rewrite ^.*$ /index.html last;
    }
}

部署项目存放地址~详情根据conf的配置来定

前端的tar包解压到这~ 可以穿文件夹具体conf的配置绝定~

启动项目

docker  ps -a 查看容器  docker start id 启动容器 没有输入启动脚本的话执行下面代码

docker run -d \
  --name nginx \
  --restart always \
  --privileged \
  -p 28051:80 \
  -v /opt/software/nginx/conf:/etc/nginx/conf.d \
  -v /etc/localtime:/etc/localtime \
  -v /opt/software/nginx/logs:/var/log/nginx \
  -v /opt/software/nginx/html:/usr/share/nginx/html \
  -v /opt/software/nginx/nginx.conf:/etc/nginx/nginx.conf \
  -v /home/data/nignxstatic:/home/data/nignxstatic \
  nginx:latest

docker ps 看是否启动了

总结 

到此这篇关于前端服务器部署Nginx +docker + ubuntu的文章就介绍到这了,更多相关前端服务器部署Nginx+docker+ubuntu内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • nginx配置多个前端项目实现步骤

    nginx配置多个前端项目实现步骤

    本文主要介绍了nginx配置多个前端项目实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • ELK收集Nginx日志的项目实战

    ELK收集Nginx日志的项目实战

    本文主要介绍了ELK收集Nginx日志的项目实战,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-05-05
  • 详解Nginx防盗链和Nginx访问控制与Nginx解析php的配置

    详解Nginx防盗链和Nginx访问控制与Nginx解析php的配置

    这篇文章主要介绍了详解Nginx防盗链和Nginx访问控制与Nginx解析php的配置的相关资料,这里提供实例帮助大家,学习理解这部分内容,需要的朋友可以参考下
    2017-08-08
  • Nginx启动常见错误及解决方法

    Nginx启动常见错误及解决方法

    重新启动服务器发现报nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed (2: No such file or directory)错误,怎么回事如何解决呢,下面脚本之家小编给大家解答下
    2016-08-08
  • nginx增加健康检查接口的实现示例

    nginx增加健康检查接口的实现示例

    Nginx作为一款强大的反向代理服务和负载均衡服务,而健康检查是为了保障nginx能够准确的转发到后端的可用服务,本文主要介绍了nginx增加健康检查接口的实现示例,感兴趣的可以了解一下
    2024-02-02
  • 配置Nginx服务器展示随机首页与空白图片的方法

    配置Nginx服务器展示随机首页与空白图片的方法

    这篇文章主要介绍了配置Nginx服务器展示随机首页与空白图片的方法,分别用到了ngx_http_random_index_module模块和ngx_http_empty_gif_module模块,需要的朋友可以参考下
    2016-01-01
  • 详解Nginx中的geo模块与利用其配置负载均衡的示例

    详解Nginx中的geo模块与利用其配置负载均衡的示例

    这篇文章主要介绍了详解Nginx中的geo模块与利用其配置负载均衡的示例,文中对模块的geo指令使用有比较详细的介绍,需要的朋友可以参考下
    2016-01-01
  • Nginx 502 Bad Gateway错误原因及解决方案

    Nginx 502 Bad Gateway错误原因及解决方案

    这篇文章主要介绍了Nginx 502 Bad Gateway错误原因及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • Nginx的一些常用配置汇总

    Nginx的一些常用配置汇总

    nginx配置说简单也简单,说复杂也复杂,入门简单,精通难,下面这篇文章主要给大家介绍了关于Nginx的一些常用配置,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-05-05
  • 在Nginx服务器下配置StartSSL和SSL的教程

    在Nginx服务器下配置StartSSL和SSL的教程

    这篇文章主要介绍了在Nginx服务器下配置StartSSL和SSL的教程,其中申请证书的步骤确实比较麻烦一些,不过出于安全考虑:p需要的朋友可以参考下
    2015-07-07

最新评论