单机部署kubernetes环境下Overleaf-基于MicroK8s的Overleaf应用部署指南

在本文中,我们将探讨如何使用MicroK8s在本地或云环境中快速部署Overleaf应用。MicroK8s是一个轻量级的Kubernetes发行版,它为开发者提供了一个简单的方式来部署和管理容器化应用。

需要使用Kompose转换Overleaf官方Docker Compose配置得到适用于kubernetes的部署格式

脚本和配置文件:GitHub - mcxiaoxiao/latexhub: Overleaf deployment for microk8s environment. An out-of-the-box solution that can be deployed directly on a single machine.

创建命名空间

我们为Overleaf应用创建一个单独的命名空间,以便于管理和隔离资源。

复制代码
microk8s kubectl create namespace overleaf

添加Helm仓库

接下来,我们添加Bitnami的Helm仓库,提供MongoDB和Redis

复制代码
microk8s helm repo add bitnami https://charts.bitnami.com/bitnami
microk8s helm search repo bitnami

部署MongoDB和Redis

使用Helm部署MongoDB和Redis服务,并应用预先配置的values.yaml文件来定制部署。

复制代码
microk8s helm install mongo bitnami/mongodb --namespace overleaf --values ./mongo/values.yaml
microk8s helm install redis bitnami/redis --namespace overleaf --values ./redis/values.yaml

启用Ingress(可选)

为了使Overleaf应用可从外部访问,我们需要启用Ingress。

复制代码
microk8s enable ingress

配置持久卷

我们定义了三个PersistentVolumes(PVs),分别提供5Gi和10Gi的存储空间,这些存储空间使用hostPath类型,适用于测试环境,但在生产环境中,我们推荐使用更可靠的存储解决方案。

复制代码
microk8s kubectl apply -f overleaf-storageclass.yaml
microk8s kubectl apply -f overleaf-pv.yaml

部署Overleaf应用

最后,我们部署Overleaf应用,并配置相关的PersistentVolumeClaims(PVCs)和其他必要的资源。

复制代码
microk8s kubectl apply -n overleaf -f ./overleaf/overleaf-pvc.yaml -f ./overleaf/overleaf-variables.yaml -f ./overleaf/overleaf-deployment.yaml -f ./overleaf/overleaf-service.yaml

访问应用

如果您需要通过HTTPS访问应用,可以获取证书并创建相应的secret。然后,取消注释并应用Ingress配置以暴露应用。

复制代码
# microk8s kubectl create secret tls overleaf-tls-secret --cert=/tlskeys/public.crt --key=/tlskeys/private.key --namespace=overleaf
# microk8s kubectl apply -f tls-ingress.yaml

此时查看所有命名空间pods转发overleaf的80端口(没有配置ingress)或者直接进入ip/域名,访问/launchpad可以设置管理员邮箱密码

开箱即用,欢迎star⭐~

GitHub - mcxiaoxiao/latexhub: Overleaf deployment for microk8s environment. An out-of-the-box solution that can be deployed directly on a single machine.

相关推荐
云道轩2 分钟前
llm-d:面向Kubernetes的高性能分布式LLM推理框架
分布式·容器·kubernetes
徐传良3 小时前
03.搭建K8S集群
云原生·容器·kubernetes
Ares-Wang4 小时前
kubernetes》》k8s》》kubectl proxy 命令后面加一个&
云原生·容器·kubernetes
容器魔方4 小时前
议程一览 | KubeCon China 2025 华为云精彩前瞻
云原生·容器·云计算
藥瓿亭6 小时前
2024 CKA模拟系统制作 | Step-By-Step | 16、题目搭建-sidecar 代理容器日志
linux·运维·docker·云原生·容器·kubernetes·cka
一ge科研小菜鸡7 小时前
构建云原生安全治理体系:挑战、策略与实践路径
安全·云原生
上海运维Q先生9 小时前
Cilium动手实验室: 精通之旅---4.Cilium Gateway API - Lab
云原生·k8s·cilium
探索云原生9 小时前
开源 vGPU 方案:HAMi,实现细粒度 GPU 切分
ai·云原生·kubernetes·gpu
NineData10 小时前
NineData云原生智能数据管理平台新功能发布|2025年5月版
数据库·云原生·oracle·devops·ninedata
---wzy---10 小时前
docker生命周期
java·docker·容器