Windows安装Odoo结合内网穿透实现公网访问本地企业管理系统

文章目录

    • 前言
    • 1. 下载安装Odoo:
    • 2. 实现公网访问Odoo本地系统:
    • 3. 固定域名访问Odoo本地系统

前言

Odoo是全球流行的开源企业管理套件,是一个一站式全功能ERP及电商平台。

开源性质:Odoo是一个开源的ERP软件,这意味着企业可以自由选择部署方式(如云端或本地服务器),并根据自身需求进行定制开发。这为企业提供了更大的灵活性和控制权。

image-20231019105702504

​ 其功能涵盖了客户管理系统CRM、生产管理系统ERP、销售、采购、仓储管理系统WMS、MRP生产制造、内部即时通讯IM、条码追溯管理、质量管理系统QMS、HR全功能、财务管理、项目管理、制造执行系统MES、产品生命周期PLM、VOIP、电子商务E-Commerce、POS收银等一系列完善的企业信息化需求。

​ Odoo包含一站式的企业所需功能。

​ 销售管理:订单处理、报价、客户关系管理等。

​ 采购管理:供应商信息、采购订单跟踪等。

​ 库存管理:产品分类、库存控制及调拨等。

​ 生产制造:生产计划、工艺路线及成本分析等。

​ 财务会计:财务报表生成、税收处理及预算控制等。

​ Odoo有两个版本 - 企业版和社区版。两个版本都是开源的,企业版其实是在社区版上层增加了更多应用模块,两者核心是一致的,我们今天来使用免费的社区版来进行内网穿透,实现远程访问本地部署的odoo企业管理系统。

​ 当内网穿透软件cpolar映射生效后,在任意上网地方,都可以通过外网域名进行访问。让外网访问内网,主要原理方案是将内网地址变成外网地址,在目标内网操作设置添加内网IP端口映射成域名。在让外网访问前,先明确自己本地内网的具体内网地址端口协议信息,并确保在内网能够正常访问。

​ 本地搭建服务器,跨网互通互连,是网络应用场景常见需求。通过cpolar内网穿透软件,我们可以轻松实现将内网服务让外网远程访问。内网穿透的应用场景十分广泛,比如外网远程桌面连接内网计算机、nas的远程访问、个人博客的搭建、FTP文件共享、数据库跨网连接等等。

1. 下载安装Odoo:

官方首页:

odoo

image-20231018155038530

image-20231018155011050

安装包地址:

Index of /15.0/nightly/ (odoo.com)

本教程使用windows版本部署安装,作为演示:

image-20231018160411478

点击链接,下载安装包,开始安装:

image-20231018161319163

一路默认设置即可

image-20231018161329664

这里是数据库的端口,用户名等信息,需要截图保存。

image-20231018161359430

安装完毕后,点 finish,就会自动弹出localhost:8069 的本地页面:

扥路

点击创建数据库后,需要加载一会儿,请耐心等待

image-20231018171036254

注意,我的odoo默认打开端口为8069,我们之后会内网穿透这个端口,实现公网访问本地部署的ERP系统。

进入应用选择页面:

image-20231018164432895

能够正常打开进入crm系统:

image-20231018164938402

image-20231018170256755

具体如何使用各个功能详见Odoo官网——文档手册,本教程主要解决如何在外地公网访问这套强大的企业管理系统。

image-20231018165247635

2. 实现公网访问Odoo本地系统:

首先,我们需要安装内网穿透软件cpolar

安装完毕后,打开[仪表盘 - Cpolar](http://localhost:9200/#/tunnels/list)

image-20231018170014366

image-20231018173510181

  • 隧道名称:可自定义,注意不要重复

  • 协议:http

  • 本地地址:8069 (odoo的 默认端口)

  • 域名类型:选择随机域名(免费)

  • 地区:Auto

    image-20231018173741947

复制这个公网地址:

image-20231018173810391

成功登陆:

image-20231018175000951

image-20231018175017668

这样我们实现了使用公网访问本地部署的开源ERP,但是免费版cpolar生成的是随机域名(24小时变化),接下来我们使用付费版将域名固定:

3. 固定域名访问Odoo本地系统

上面使用Cpolar建立的临时http数据隧道,连接上了Odoo。不过,此时还是随机临时http隧道,每隔24小时端口号就会发生变化。

如果想要让不同设备间的数据隧道长期稳定存在,我们还需要进一步的设置(由于固定TCP隧道会长期占用Cpolar服务器资源,因此不得不将此服务列入VIP项目中)。

要建立一条稳定的http数据隧道,我们首先要登录Cpolar官网,进入仪表台的预留界面

20230530092244

20230530092321

在预留界面中,找到 保留二级子域名 项目。在这个项目下,我们填入一些必要信息,如识别数据隧道的隧道名称、隧道使用区域等。

image-20231019100431906

在这些信息填入后,点击右侧的保留按钮,将Cpolar官网后台的隧道固定下来

复制填写的二级子域名:

image-20231019100501178

回到Cpolar webui界面:

image-20231019100552297

  • 隧道名称:可自定义,注意不要重复
  • 协议:http
  • 本地地址:8069 (网页的 默认端口)
  • 域名类型:二级子域名(需要升级至基础版套餐及以上)
  • sub domain:填刚刚在官网保留的二级域名
  • 地区:我这里选择的是美国,这里需要与官网保留界面选择的一致!

点击 更新 后, 到 状态——在线隧道列表

image-20231019102536412

再次查看在线隧道列表,发现localhost:8069隧道对应的公网地址变成了我们官网保留的固定二级子域名地址。

复制这个固定地址到浏览器:

image-20231019102717373

穿透成功!

image-20231019102914030

image-20231019104204291

这样我们就实现了将本地部署的开源免费版Odoo系统上云,企业员工们可以实现在家或在户外来访问在办公室主机上安装的Odoo。

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

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

相关文章

工业以太网无线网桥

一、功能概述 1.1设备简介 本产品是工业以太网(Profinet、EtherNet/IP、ModbusTCP等)转无线设备,成对使用(一对一),本产品出厂前已经配对好,用户不需要再配对,即插即用。 本产品适…

【C++】从C到C++、从面向过程到面向对象(类与对象)

文章目录 C入门知识C与C的关系1. 类的引入:从结构体到类2. 类的声明和定义3. 类的作用域4. 类的访问限定符5. 面向对象特性之一:封装6. 类的实例化:对象7. 计算类对象的内存大小8. 成员函数中暗藏的this指针9. 类的六个默认生成的成员函数9.1…

哪个洗地机性价比比较高?这几款品牌值得入手

洗地机是现在越来越受欢迎的清洁工具,功能非常齐全。它就像是吸尘器和电动拖把的结合体,对于每天要做家务的人来说,可以一次性解决多种类型的垃圾,省时省心省力。可是面对种类繁杂的洗地机市场,我们该如何选择呢&#…

如何在群晖NAS搭建bitwarden密码管理软件并实现无公网IP远程访问

前言 作者简介: 懒大王敲代码,计算机专业应届生 今天给大家聊聊如何在群晖NAS搭建bitwarden密码管理软件并实现无公网IP远程访问,希望大家能觉得实用! 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖&am…

python_1

要求: 代码: # 先将分钟数转化成年数,再将余数做为天数 minute float(input("请输入分钟数:")) year_1 (minute / 60 / 24) // 365 day_1 (minute / 60 / 24) % 365 now f"{minute}分钟{year_1}年{day_1}天&q…

值得收藏!2024年智能交通领域顶级会议投稿信息汇总

智能交通系统(Intelligent Transportation Systems, ITS)是应用现代信息技术、通信技术、数据处理技术、控制技术和传感技术于交通管理系统中,旨在提高道路安全性、提升交通效率、改善交通环境、增加驾驶舒适度和效率的综合智能化系统。它通过…

【C++初阶】之类和对象(中)

【C初阶】之类和对象(中) ✍ 类的六个默认成员函数✍ 构造函数🏄 为什么需要构造函数🏄 默认构造函数🏄 为什么编译器能自动调用默认构造函数🏄 自己写的构造函数🏄 构造函数的特性 ✍ 拷贝构造…

淘宝商品评论抓取技术大揭秘:轻松获取用户评价,助力电商决策!

获取淘宝商品评论接口的技术实现涉及多个步骤,包括获取商品ID、构建请求URL、发送HTTP请求以及解析响应数据。以下是一个基本的指南和示例代码,帮助你了解如何实现这一功能。 步骤一:获取商品ID 首先,你需要知道你想要获取评论的…

fuzzywuzzy,一个好用的 Python 库!

目录 前言 安装 基本功能 1. 字符串相似度比较 2. 模糊匹配与排序 实际应用场景 1. 数据清洗 2. 文本匹配与搜索 3. 搜索引擎优化 总结 前言 大家好,今天为大家分享一个好用的 Python 库 - fuzzywuzzy Github地址:https://github.com/seatgeek/fu…

Stable Diffusion WebUI 图生图(img2img):图生图/涂鸦绘制/局部重绘/有色蒙版/上传蒙版/批量处理/反推提示词

本文收录于《AI绘画从入门到精通》专栏,专栏总目录:点这里,订阅后可阅读专栏内所有文章。 大家好,我是水滴~~ 本篇文章我们介绍 Stable Diffusion WebUI 的图生图功能,主要包括:图生图、图生图&#xff08…

Spring-IoC-属性注入的注解实现

1、创建对象的注解 Component 用于声明Bean对象的注解,在类上添加该注解后,表示将该类创建对象的权限交给Spring容器。可以直接将这些类直接创建,使用的时候可以直接用。 注解的value属性用于指定bean的id值,value可以省略&…

BioXcell InVivoPlus anti-mouse Ly6G及部分参考文献

BioXcell InVivoPlus anti-mouse Ly6G 1A8单克隆抗体与小鼠Ly6G反应。Ly6G分子量为21-25kDa,是GPI锚定的细胞表面蛋白Ly-6超家族的成员,在细胞信号传导和细胞粘附中发挥作用。Ly6G在发育过程中由骨髓谱系中的细胞(包括单核细胞、巨噬细胞、粒…

在点集的新知识面前百年集论不堪一击

黄小宁 与x∈R相异(等)的实数均可表为yxδ(增量δ可0也可≠0),因各实数的绝对值都可是表示长度的数故各实数都可是数轴上点的坐标,于是x∈R变换为实数yxδ的几何意义可是:一维空间“管道”g内R…

产品推荐 | 基于 Xilinx ZYNQ UltraScale+的FACE-ZUSSD-C 多核SOC设计开发平台

01、产品概述 FACE-ZUSSD-C多核SOC设计开发平台是FACE系列的新产品。FACE-ZUSSD-C搭载有16nm工艺的ZYNQ UltraScale系列主器件ZU19EG。该主器件具有丰富的FPGA可编程逻辑资源,同时其内嵌有四核ARM CortexA53,双核ARM CortexR5以及Mali400 GPU。 平台板…

常用的苹果应用商店上架工具推荐

摘要 移动应用app上架是开发者关注的重要环节,但常常会面临审核不通过等问题。为帮助开发者顺利完成上架工作,各种辅助工具应运而生。本文探讨移动应用app上架原理、常见辅助工具功能及其作用,最终指出合理使用工具的重要性。 引言 移动应…

构建一个基础的大型语言模型(LLM)应用程序

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

通用指南-营销和设计中的增强现实(AR)

原文作者:Superside 翻译:数字化营销工兵 --- 经典万字长文,权威解读,分享经典,预计阅读完需要30分钟,建议收藏! 目录 一、引言 为什么要尝试AR AR到底是什么?营销人员和创意人…

镭速如何适配国产数据库(达梦)进行高效数据管理与共享

在当今企业运营的背景下,数据的管理和共享显得尤为关键。在这个过程中,挑选一个合适的数据库系统是至关重要的。国产的达梦数据库因其在多个关键领域,如金融、能源、航空和通信等的成功运用,已经成为众多企业的首选解决方案。 作为…

【Git篇】复习git

文章目录 🍔什么是git⭐git和svn的区别 🍔搭建本地仓库🍔克隆远程仓库🛸git常用命令 🍔什么是git Git是一种分布式版本控制系统,它可以追踪文件的变化、协调多人在同一个项目上的工作、恢复文件的旧版本等…

后端程序员入门react笔记(九)- react 插件使用

setState setState引起的react的状态是异步的。操作完毕setState之后如果直接取值,可能取不到最新的值,我们举个例子console.log(this.state.num)打印的值,总是上一次的值而不是最新的。 import React, {Component} from react; class Ap…