【Linux部署】【pig前端部署】Linux安装- docker/docker-compose/nginx (使用docker优雅部署nginx)

🌸🌸 Linux安装- docker/docker-compose/nginx 优雅部署 🌸🌸

一、一键安装jdk

  • yum install -y java-1.8.0-openjdk.x86_64
  • 验证
    • 在这里插入图片描述

二、安装docker

  1. yum list docker-ce --showduplicates | sort -r
  2. sudo yum install -y yum-utils device-mapper-persistent-data lvm2
  3. sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  4. sudo yum makecache fast
  5. sudo yum install docker-ce
  6. sudo service docker start
  • 验证
    • 在这里插入图片描述

三、安装docker-compose

  1. sudo curl -L "https://github.com/docker/compose/releases/download/v2.26.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
  2. sudo chmod +x /usr/local/bin/docker-compose
  3. 验证docker-compose --version
    • 不推荐github不稳定时,容易下载失败,docker-compose里的内容会各种错误)
    • 在这里插入图片描述
  • 若下载失败则手动安装(推荐,可以自己选择适配的)
    • 在这里插入图片描述
    1. 下载后放入指定位置,如/usr/local/bin,(GitHub不稳定开下梯子)
    2. 更改二进制文件名字,mv docker-compose-linux-x86_64 docker-compose
    3. sudo chmod +x /usr/local/bin/docker-compose
    4. 验证 docker-compose --version

四、docker编排安装nginx

  • 配置文件参考:RuoYi-Vue-Plus
  • 文件放置,注意授权
    • chmod -R 777 /docker/
    • 在这里插入图片描述
  • nginx.conf
worker_processes  1;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    # 限制body大小
    client_max_body_size 100m;

    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;

    server {
        listen       188;
        server_name  localhost;

        # 限制外网访问内网 actuator 相关路径
        location ~ ^(/[^/]*)?/actuator(/.*)?$ {
            return 403;
        }

	   location / {
    		  root   /usr/share/nginx/pig/html;
		  try_files $uri $uri/ /index.html;
		  index  index.html index.htm;
	   }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
    server {
        listen       80;
        server_name  localhost;
        # 限制外网访问内网 actuator 相关路径
        location ~ ^(/[^/]*)?/actuator(/.*)?$ {
            return 403;
        }
        location / {
            root   /usr/share/nginx/html; # docker映射路径 不允许更改
            try_files $uri $uri/ /index.html;
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}
  • docker-compose
version: '3'
services:
  nginx-web:
    image: nginx:1.23.4
    container_name: nginx-web
    environment:
      # 时区上海
      TZ: Asia/Shanghai
    ports:
      - "80:80"
      - "443:443"
    volumes:
      # 证书映射
      - /docker/nginx/cert:/etc/nginx/cert
      # 配置文件映射
      - /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf
      # 页面目录
      - /docker/nginx/html:/usr/share/nginx/html
      - /docker/nginx/pig/html:/usr/share/nginx/pig/html
      # 日志目录
      - /docker/nginx/log:/var/log/nginx
    privileged: true
    network_mode: "host"
  1. 注意nginxdocker-compose的配置要对应

    • 在这里插入图片描述
  2. 将前端文件放入***宿主机***指定位置

    • 不要按照容器的地址放在宿主机地址了,那样不会找到前端文件的,可能会报403,因为找不到文件
      在这里插入图片描述
      在这里插入图片描述
  3. 验证
    在这里插入图片描述
    在这里插入图片描述

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

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

相关文章

Visual Studio和Visual Studio Code分清了? 都是IDE,可不是框架。

Visual Studio和VSCode两者都是 Microsoft 制造的IDE(集成开发环境)。尽管它们的名字相似,但它们的功能却大不相同。 一、什么是Visual Studio(VS) Visual Studio(简称VS)是由微软公司开发的一…

用go语言实现一个有界协程池

写在文章开头 本篇文章算是对go语言系列的一个收尾,通过go语言实现一个实现一个简单的有界协程池。 Hi,我是 sharkChili ,是个不断在硬核技术上作死的 java coder ,是 CSDN的博客专家 ,也是开源项目 Java Guide 的维护…

AIGC时代算法工程师的面试秘籍(2024.4.29-5.12第十三式) |【三年面试五年模拟】

写在前面 【三年面试五年模拟】旨在整理&挖掘AI算法工程师在实习/校招/社招时所需的干货知识点与面试方法,力求让读者在获得心仪offer的同时,增强技术基本面。也欢迎大家提出宝贵的优化建议,一起交流学习💪 欢迎大家关注Rocky…

引入安全生产培训云平台,实现“人人讲安全、个个会应急”

引入安全生产培训云平台,旨在全面提升企业及员工的安全意识与应急处理能力,通过数字化手段实现“人人讲安全、个个会应急”的目标。这一平台的构建和应用,不仅促进了安全知识的普及,还极大提高了培训的效率与效果。以下是该平台几…

Backend - postgresSQL DB 存储过程(数据库存储过程)

目录 一、存储过程的特性 (一)作用 (二)特点 (三)编码结构的区别 二、定时执行存储过程 三、2种编码结构 (一)函数结构 1. SQL代码 2. 举例 (1)例1-循…

邦之信短信分析:验证码短信、营销短信与通知短信的差异化解析

在数字通讯时代,短信已成为我们日常生活中不可或缺的一部分。其中,验证码短信、营销短信和通知短信各自扮演着不同的角色。今天,飞鸽将带您深入了解这三种短信类型之间的核心差异。 1. 验证码短信 验证码短信广泛应用于各类电商网站和…

【UE5.1 角色练习】07-AOE技能

目录 效果 步骤 一、准备技能动画 二、准备粒子特效 三、技能蓝图 四、相机震动 前言 在上一篇(【UE5.1 角色练习】06-角色发射火球-part2)基础上继续实现角色释放AOE技能的功能。 效果 步骤 一、准备技能动画 1. 在项目设置中添加一个操作映…

如何恢复已删除/丢失的照片/视频?

“嗨,我把我所有的世界杯照片和视频都存储在我的数码相机存储卡上。但是,当我将存储卡与计算机连接时,它会要求我格式化存储卡。我格式化了存储卡,但我所有的世界杯照片和视频都不见了。这对我来说是一场大灾难。是否有可能恢复丢…

[图解]产品经理创新模式01物流变成信息流

1 00:00:01,570 --> 00:00:04,120 有了现状的业务序列图 2 00:00:04,960 --> 00:00:08,490 我们就来改进我们的业务序列图了 3 00:00:08,580 --> 00:00:11,010 把我们要做的系统放进去,改进它 4 00:00:13,470 --> 00:00:15,260 怎么改进?…

【MATLAB】信号的熵

近似熵、样本熵、模糊熵、排列熵|、功率谱熵、奇异谱熵、能量熵、包络熵 代码内容: 获取代码请关注MATLAB科研小白的个人公众号(即文章下方二维码),并回复信号的熵本公众号致力于解决找代码难,写代码怵。各位有什么急需…

Pytorch DDP分布式细节分享

自动微分和autograde 自动微分 机器学习/深度学习关键部分之一:反向传播,通过计算微分更新参数值。 自动微分的精髓在于它发现了微分计算的本质:微分计算就是一系列有限的可微算子的组合。 自动微分以链式法则为基础,依据运算逻…

Tomcat源码解析(七):底层如何获取请求url、请求头、json数据?

Tomcat源码系列文章 Tomcat源码解析(一):Tomcat整体架构 Tomcat源码解析(二):Bootstrap和Catalina Tomcat源码解析(三):LifeCycle生命周期管理 Tomcat源码解析(四):StandardServer和StandardService Tomcat源码解析(五)&…

知攻善防应急响应靶机训练-Web3

前言 本次应急响应靶机采用的是知攻善防实验室的Web-3应急响应靶机 靶机下载地址为: https://pan.quark.cn/s/4b6dffd0c51a 相关账户密码 用户:administrator 密码:xj123456xj123456 解题过程 第一题-攻击者的两个IP地址 直接查看apache的log日志搜索.php 发现…

学习Uni-app开发小程序Day26

这一章学习的内容细节较多,主要是分为:首次加载减少网络消耗、获取图片的详细信息、图片的评分和避免重复评分、将图片下载到本地并且获取设备的授权 加载图片减少网络消耗 这里突出这个功能,是根据老师视频上的描述,个人觉得很…

Spark介绍

Spark简介 Spark,是一种通用的大数据计算框架,正如传统大数据技术Hadoop的MapReduce、Hive引擎,以及Storm流式实时计算引擎等. Spark是加州大学伯克利分校AMP实验室(Algorithms Machines and People Lab)开发的通用内存并行计算框架,用于构建大型的、低延迟的数据分析应用程序…

Python图像处理库全面详细解析

目录 引言 PIL和Pillow:基础但强大的图像处理 PIL到Pillow的演变 功能亮点 实际应用案例 Pillow的适用场景 结论 ​编辑 OpenCV:计算机视觉的瑞士军刀 OpenCV的核心特点 功能亮点 实际应用案例 OpenCV的适用场景 结论 ​编辑 Scikit-Imag…

pytest:指定测试用例执行顺序

在自动化测试中,测试用例的执行顺序有时对测试结果具有重要影响。本文将介绍如何在pytest框架中使用pytest-ordering插件以及Collection hooks来控制测试用例的执行顺序。 方式1: 使用pytest-ordering插件控制执行顺序 1.1 安装pytest-ordering插件 首…

Python编程的黑暗魔法:模块与包的神秘力量!

哈喽,我是阿佑,今天给大家讲讲模块与包~ 文章目录 1. 引言1.1 模块化编程的意义1.2 Python中模块与包的概念概述 2. 背景介绍2.1 Python模块系统模块的定义与作用Python标准库简介 2.2 包的结构与目的包的定义与目录结构包在项目组织中的重要性 3. 创建与…

用three.js+echarts给公司写了一个站点数据大屏系统经验总结

时间过的好快,参加公司的新项目研发快一年了,五一机器人项目首秀,我们遇到了高并发集中下单情景,然后海量数据处理场景来了,给我在后端领域的高并发实践业务上画上了漂亮的一笔经验。人都是在磨练中成长,我很感谢这次给我的机会,虽然有点累,但也有点小成就。正好现在有…

基于RK3568核心板的雷视融合一体机,助力交通管理智能化升级

随着5G网络与智慧交通车路协同系统在全国各点的落地,作为提升交通安全的前沿技术方案也愈发受到重视。 在交通信控领域,以往的感知技术、无论是地磁、线圈还是摄像头,功能都仅仅局限于数清经过了多少车辆,无法满足交通数字化管理…