【Ubuntu】简化反向代理和个性化标签页体验

本文将介绍如何使用Docker部署Nginx Proxy Manager和OneNav,两个功能强大且易用的工具。Nginx Proxy Manager用于简化和管理Nginx反向代理服务器的配置,而OneNav则提供个性化的新标签页体验和导航功能。通过本文的指导,您将学习如何安装和配置这两个工具,并实现优化的Web服务器和浏览器体验。

介绍

Nginx Proxy Manager是一个基于Web的界面,用于简化和管理Nginx反向代理服务器的配置。它提供了一个直观的用户界面,使用户可以轻松地设置反向代理规则、SSL证书、访问控制列表等。Nginx Proxy Manager使配置和管理Nginx反向代理变得更加方便和可视化。
OneNav是一个开源的浏览器开始页和导航器,旨在为用户提供个性化的新标签页体验。它允许用户定义自己的书签和快速访问链接,并支持自定义外观和布局。OneNav还提供了一些有用的功能,如实时天气、搜索引擎集成和笔记功能。

部署

部署Nginx Proxy Manager

通过运行以下命令下载并运行最新的Nginx Proxy Manager容器:

docker run -d --name='nginx-proxy-manager' \
-p 80:80   -p 81:81   -p 443:443  \ 
-v /docker/nginx-proxy-manager/data:/data  \ 
-v /docker/nginx-proxy-manager/letsencrypt:/etc/letsencrypt \  
jc21/nginx-proxy-manager:latest

上述命令使用Docker运行Nginx Proxy Manager容器,并解释如下:

  • docker run -d: 启动一个Docker容器,并将其设置为后台运行。
  • --name='nginx-proxy-manager': 指定容器的名称为’nginx-proxy-manager’,您可以根据需要进行更改。
  • -p 80:80 -p 81:81 -p 443:443: 将主机的端口80, 81和443映射到容器的对应端口,这样可以通过主机的这些端口来访问Nginx Proxy Manager。
  • -v /docker/nginx-proxy-manager/data:/data: 将主机上的/docker/nginx-proxy-manager/data目录挂载到容器内的/data目录,用于持久化Nginx Proxy Manager的数据。
  • -v /docker/nginx-proxy-manager/letsencrypt:/etc/letsencrypt: 将主机上的/docker/nginx-proxy-manager/letsencrypt目录挂载到容器内的/etc/letsencrypt目录,用于存储Nginx Proxy Manager使用的SSL证书。
  • jc21/nginx-proxy-manager:latest: 指定要运行的Nginx Proxy Manager容器的镜像,这里使用的是jc21/nginx-proxy-manager镜像,并且指定使用最新版本(latest)。

请注意,您需要将/docker/nginx-proxy-manager/data/docker/nginx-proxy-manager/letsencrypt替换为您希望存储Nginx Proxy Manager数据和证书的本地路径。

访问Nginx Proxy Manager界面

打开您的浏览器,访问http://localhost:81。您将看到Nginx Proxy Manager的登录界面。首次登录时,您需要创建管理员帐户以管理代理设置。在这里插入图片描述

部署OneNav

下载并运行OneNav容器:

运行以下命令下载并运行OneNav容器:

docker run -itd --name="onenav" \
-p 82:80 -e USER='admin' -e PASSWORD='JXz^DNrA!d7Z' \
-v /docker/onenav:/data/wwwroot/default/data \
helloz/onenav:0.9.15

上述命令使用Docker运行OneNav容器,并解释如下:

  • docker run -itd: 启动一个Docker容器,并将其设置为后台运行。-itd参数将容器的标准输入/输出连接到宿主机的终端,同时以守护进程模式运行容器。

  • --name="onenav": 指定容器的名称为"onenav",您可以根据需要进行更改。

  • -p 82:80: 将主机的端口82映射到容器的端口80,这样可以通过主机的82端口来访问OneNav。

  • -e USER='admin' -e PASSWORD='JXz^DNrA!d7Z': 设置环境变量USERPASSWORD,用于指定OneNav的管理员用户名和密码。在此示例中,用户名为"admin",密码为"JXz^DNrA!d7Z",您可以根据需求进行更改。

  • -v /docker/onenav:/data/wwwroot/default/data: 将主机上的/docker/onenav目录挂载到容器内的/data/wwwroot/default/data目录,用于持久化OneNav的数据。

  • helloz/onenav:0.9.15: 指定要运行的OneNav容器的镜像,这里使用的是helloz/onenav镜像的0.9.15版本。

请注意,您需要将/docker/onenav替换为您希望存储OneNav数据的本地路径。

访问OneNav界面:

在浏览器中访问http://localhost:82,您将看到OneNav的界面。您可以开始自定义书签、快速访问链接和外观设置,以满足您的需求。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

为什么选择0.9.15较为旧的版本是因为在使用默认主题情况下,可以添加JavaScript做一些修改。
在这里插入图片描述

通过本文的指导,您学习了如何使用Docker部署Nginx Proxy Manager和OneNav。Nginx Proxy Manager简化了Nginx反向代理服务器的配置和管理,帮助用户快速设置代理规则和SSL证书。OneNav提供个性化的新标签页体验和导航功能,使您能够自定义书签和快速访问链接。通过将这两个工具部署到您的环境中,您可以实现更优化和个性化的Web服务器和浏览器体验。

(注意: 在实际部署过程中,请确保系统和网络的安全性,并按照每个工具的文档进行详细配置和管理。)

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

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

相关文章

vue组件通信的方式?

父子通信&#xff1a; 1、父传子&#xff1a;在父组件的子组件标签绑定一个自定义属性&#xff0c;子组件通过props获取父组件传递的数据。 //父 <child :data"list" del"idx > list.splice(idx, 1)" ref"child" :isShow.sync"isS…

Redis可以用作数据库吗?它的适用场景是什么?

是的&#xff0c;Redis可以用作数据库。虽然Redis通常被认为是一个内存数据库&#xff08;in-memory database&#xff09;&#xff0c;但它也可以通过持久化机制将数据保存在磁盘上&#xff0c;以便在重启后恢复数据。 Redis的适用场景包括但不限于以下几个方面&#xff1a; …

程序使用Microsoft.XMLHTTP对象请求https时出错解决

程序中使用Microsoft.XMLHTTP组件请求https时出现如下错误&#xff1a; 出错程序代码示例&#xff1a; strUrl "https://www.xxx.com/xxx.asp?id11" dim objXmlHttp set objXmlHttp Server.CreateObject("Microsoft.XMLHTTP") objXmlHttp.open "…

电脑关机程序

//关机程序 1、电脑运行起来后&#xff0c;1分钟内关机。 2、如果输入&#xff1a;我是猪。就取消关机。 #include<stdio.h> #include<string.h> int main() { char input[20] { 0 }; system("shutdown -s -t 60"); again: printf(&quo…

Cesium相机理解

关于cesium相机&#xff0c;包括里面内部原理网上有很多人讲的都很清楚了&#xff0c;我感觉这两个人写的都挺好得&#xff1a; 相机 Camera | Cesium 入门教程 (syzdev.cn) Cesium中的相机—setView&lookAtTransform_cesium setview_云上飞47636962的博客-CSDN博客上面这…

【Linux】进程间通信——system V共享内存

目录 写在前面的话 System V共享内存原理 System V共享内存的建立 代码实现System V共享内存 创建共享内存shmget() ftok() 删除共享内存shmctl() 挂接共享内存shmat() 取消挂接共享内存shmdt() 整体通信流程的实现 写在前面的话 上一章我们讲了进程间通信的第一种方式…

Linux基础学习

文章目录 Linux命令学习Linux环境准备Linux命令行学习Linux命令行格式与文件系统linux实用命令笔记Linux文件权限查看 Linux命令学习 理解Linux命令是什么 &#xff08;图形化的操作&#xff0c;文件查看&#xff0c;浏览器打开&#xff09; 你打开一个谷歌浏览器&#xff0c;…

微积分入门:总结归纳汇总(一)

基础 标准符号约定: ( s i n x ) n (sinx)^n (sinx)

Spring Aop组成部分

Spring Aop &#xff08;Aspect orirnted Programming&#xff09;面向切面编程,是对面向对象编程的一种补充&#xff0c;是一种编程思想&#xff0c;是对某一类的事情的集中处理。 比如用户登录状态的验证状态&#xff0c;在之前写servlet版本的博客系统&#xff0c;这里就有…

模拟实现消息队列项目(系列4) -- 服务器模块(内存管理)

目录 前言 1. 创建MemoryDataCenter 2. 封装Exchange 和 Queue方法 3. 封装Binding操作 4. 封装Message操作 4.1 封装消息中心集合messageMap 4.2 封装消息与队列的关系集合queueMessageMap的操作 5. 封装未确认消息集合waitMessage的操作 6. 从硬盘中恢复数据到内存中 7. Memo…

ceph pg inconsistent修复(unexpected clone)

问题概述&#xff1a; ceph -s 显示pg 10.17 inconsistent 且命令ceph pg repair 10.17无法修复&#xff0c;/var/log/ceph/cep-osd.3.log报错内容如下&#xff1a; pg 10.17 osd [3,4] 权威副本osd&#xff1a;3 repair 10.17 10:e889b16a:::rbd_data.88033092ad95.00000000…

Linux 命令之 - scp(从远端机器拉取数据)

scp是secure copy的简写&#xff0c;用于在Linux下进行远程拷贝文件的命令&#xff0c;和它类似的命令有cp&#xff0c;不过cp只是在本机进行拷贝不能跨服务器&#xff0c;而且scp传输是加密的。 命令格式&#xff1a; scp [参数] [原路径] [目标路径]从本地服务器复制到远程…

面试攻略,Java 基础面试 100 问(一)

面向对象的特征有哪些方面? 抽象(Encapsulation)&#xff1a;封装的目的是为了保证变量的安全性&#xff0c;使用者不必在意具体实现细节&#xff0c;而只是通过外部接口即可访问类的成员 如果不进行封装&#xff0c;类中的实例变量可以直接查看和修改&#xff0c;可能给整个…

工具推荐:Wireshark网络协议分析工具(对比tcpdump)

文章首发地址 Wireshark是一款开源的网络协议分析工具&#xff0c;可以捕获网络数据包并对其进行详细的分析和解释。下面是Wireshark的详细介绍&#xff1a; Wireshark 工作原理 Wireshark通过捕获网络接口上的数据包&#xff0c;将其转换为可读的格式&#xff0c;并在界面…

vue3实现自定义select下拉框内容之城市区域篇

分享-2023年资深前端进阶&#xff1a;前端登顶之巅-最全面的前端知识点梳理总结 *分享一个使用比较久的&#x1fa9c; 需求分析&#xff1a; 1、实现一个区域下拉选项与现有ui组件库不同&#xff0c;支持多选、单选需求 2、支持选中区域后-全选中当前区域下的所有城市信息 3、…

安卓如何卸载应用

卸载系统应用 首先需要打开手机的开发者选项&#xff0c;启动usb调试。 第二步需要在电脑上安装adb命令&#xff0c;喜欢的话还可以将它加入系统path。如果不知道怎么安装&#xff0c;可以从这里下载免安装版本。 第三步将手机与电脑用数据线连接&#xff0c;注意是数据线&a…

贝叶斯深度学习的温和介绍

一、说明 欢迎来到令人兴奋的概率编程世界&#xff01;本文是对这个领域的温和介绍&#xff0c;你只需要对深度学习和贝叶斯统计有一个基本的了解。如果像我一样&#xff0c;你听说过贝叶斯深度学习&#xff0c;并且你猜它涉及贝叶斯统计&#xff0c;但你不知道它是如何使用的&…

iOS开发-处理UIControl触摸事件TrackingWithEvent

IOS BUG记录 之 处理UIControl的点击事件。 UIControl的触摸事件的方法是beginTrackingWithTouch:withEvent:&#xff0c;continueTrackingWithTouch:withEvent:&#xff0c;endTrackingWithTouch:withEvent:&#xff0c;cancelTrackingWithEvent: ##下面简单的介绍一下 beg…

【Express.js】集成Websocket

集成websocket 本节我们介绍在如何在 express 中集成 websocket。 WebSocket 服务器可以主动向客户端推送信息&#xff0c;客户端也可以主动向服务器发送信息&#xff0c;是真正的双向平等对话&#xff0c;属于服务器推送技术的一种。 准备工作 创建一个 express.js 项目&a…