当前位置: 代码网 > it编程>开发工具>Docker > 前端服务器部署Nginx +docker + ubuntu的完整过程

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

2025年11月04日 Docker 我要评论
安装解压工具sudo apt install unzip安装docker更新系统包索引和安装依赖sudo apt updatesudo apt install docker-ce docker-ce-

安装解压工具

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内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com