0
点赞
收藏
分享

微信扫一扫

使用Solopace.Gem远程访问内网ERP-dolibarr

步骤一. 安装dolibarr开源ERP系统

dolibarr的数据存储可选mysql或postgres,在使用Solopace.Gem访问k8s部署的CMS系统一文中,我们在kubernetes集群中部署运行了一个单实例的mysql服务,在这里我们选择直接复用之前部署的mysql数据库。

创建dolibarr的程序用户和数据库

create database dolibarr_db default character set utf8mb4 collate utf8mb4_unicode_ci; grant all privileges on dolibarr_db.* to 'dolib'@'%' identified by '自定义密码'; alter user 'dolib'@'%' identified with mysql_native_password by '自定义密码';

创建dolibarr on k8s部署清单


1.deployment资源


注意:如果要将dolibarr与mysql部署在不同的名称空间,则变量DOLI_DB_HOST的值应该为mysql service的完整FQDN,如:svc-mysql.<namespace>.svc.cluster.local


apiVersion: apps/v1 kind: Deployment metadata: name: deploy-dolibarr labels: app: dolibarr spec: replicas: 1 selector: matchLabels: app: dolibarr template: metadata: labels: app: dolibarr spec: initContainers: - name: initsysctl image: busybox command: - sh - -c - | sysctl -w net.ipv4.tcp_keepalive_time=600 sysctl -w net.ipv4.tcp_keepalive_intvl=30 sysctl -w net.ipv4.tcp_keepalive_probes=10 securityContext: privileged: true containers: - name: dolibarr image: tuxgasy/dolibarr ports: - containerPort: 80 livenessProbe: httpGet: path: / port: 80 initialDelaySeconds: 30 periodSeconds: 10 timeoutSeconds: 5 readinessProbe: httpGet: path: / port: 80 initialDelaySeconds: 30 periodSeconds: 10 timeoutSeconds: 5 lifecycle: preStop: exec: command: ["/bin/sh","-c","/usr/bin/php /var/www/html/core/scripts/stop.php"] env: - name: DOLI_DB_HOST value: svc-mysql - name: DOLI_DB_PORT value: '3306' - name: DOLI_DB_NAME value: dolibarr_db - name: DOLI_DB_USER value: doli - name: DOLI_DB_PASSWORD valueFrom: secretKeyRef: name: sec-doli-dbpass key: MYSQL_DOLI_PASSWORD - name: DOLI_URL_ROOT value: 'http://0.0.0.0' - name: PHP_INI_DATE_TIMEZONE value: 'Asia/Shanghai' resources: limits: cpu: 500m memory: 1Gi requests: cpu: 100m memory: 256Mi

2.secret资源,用户将dolibarr连接mysql的密码加密存储


注意:MYSQL_DOLI_PASSWORD的值应该是真实密码的base64转码


apiVersion: v1 kind: Secret metadata: name: sec-doli-dbpass labels: dbtype: mysql app: dolibarr type: Opaque data: MYSQL_DOLI_PASSWORD: <xxxxxxxxxxxxxxxxxxx>

3.service资源


apiVersion: v1 kind: Service metadata: name: svc-dolibarr labels: app: dolibarr spec: type: NodePort ports: - port: 80 targetPort: 80 name: http selector: app: dolibarr

应用资源清单部署dolibarr


kubectl apply -f secret.yaml kubectl apply -f deployment.yaml kubectl apply -f service.yaml

检查服务运行状态


执行命令:

kubectl get pods -A -l 'app=dolibarr'

使用Solopace.Gem远程访问内网ERP-dolibarr_物联网

使用Solopace.Gem远程访问内网ERP-dolibarr_工具_02当返回结果中STATUS列为Running时候,代表部署成功

内网访问ERP


获取dolibarr service的主机端口:

kubectl get svc -A -l 'app=dolibarr'

使用Solopace.Gem远程访问内网ERP-dolibarr_网络安全_03

可以看到这里的对外暴露的端口是31810,此时在内网环境下直接访问k8s任意节点的ip:31810即可访问dolibarr的web控制台


使用Solopace.Gem远程访问内网ERP-dolibarr_物联网_04

使用初始账号密码:admin/admin登录即可

步骤二. 远程访问内网ERP


此时如果我们需要在家或则异地访问部署在内网环境的ERP系统的话,下面介绍一种方便快捷的解决方案:

Solopace.Gem传送门下载地址


服务端安装SolopaceGem


Kubernetes本身具有容器运行环境,因此我们选择最简单方便的Docker来安装SolopaceGem,在任意一台k8s集群节点中:

  • 执行以下命令启动SolopaceGem Docker客户端

sudo docker run -d --name=SolopaceGem -v /var/lib:/var/lib -v /dev/net/tun:/dev/net/tun --network=host --restart=always --cap-add=NET_ADMIN --cap-add=NET_RAW doaction/solopacegem:latest


  • 获取SolopaceGem组网链接

sudo docker exec SolopaceGem solopacegem status

使用Solopace.Gem远程访问内网ERP-dolibarr_物联网_05


  • 复制组网链接地址至浏览器打开


使用Solopace.Gem远程访问内网ERP-dolibarr_物联网_06


  • 创建组网并加入


使用Solopace.Gem远程访问内网ERP-dolibarr_网络安全_07


  • 成功加入组网


使用Solopace.Gem远程访问内网ERP-dolibarr_物联网_08


在客户端上安装SolopaceGem


  • 下载SolopaceGem客户端


在需要远程访问内网ERP系统的PC上访问官网下载适用于您设备系统的客户端。

官网:首页-Solopace.Gem传送门


使用Solopace.Gem远程访问内网ERP-dolibarr_组网_09


下载完成后,按照提示进行安装即可。


  • 安装后登录/注册(未注册用户将会自动注册)


使用Solopace.Gem远程访问内网ERP-dolibarr_组网_10


此处使用之前安装Docker客户端是注册的账号登录


  • 客户端加入组网


登录后选择已有网络ID,将会自动列出之前创建的网络


使用Solopace.Gem远程访问内网ERP-dolibarr_网络安全_11

选择网络ID并加入即可



  • 连接网络


使用Solopace.Gem远程访问内网ERP-dolibarr_工具_12

当在在线设备列表中看到当前客户端与Kubernetes Docker客户端都处于在线状态时,说明组网成功。


通过Solopace.Gem组网IP访问

当组网成功之后,我们只需要将之前的内网IP改为Solopace.Gem为Docker客户端分配的组网IP加端口的形式,即可实现远程访问内网的ERP系统啦!


使用Solopace.Gem远程访问内网ERP-dolibarr_mysql_13

举报

相关推荐

0 条评论