百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Ubuntu本地Docker部署Leantime项目管理工具与远程访问

nanshan 2025-02-13 13:27 8 浏览 0 评论

前言

本文主要介绍如何在本地Linux系统使用Docker部署Leantime,并结合cpolar内网穿透工具轻松实现随时随地查看浏览器页面,在线管理自己的数据中心,无需公网IP也不用域名与云服务器。

对于许多初创公司和小型团队来说,高效、简便且功能全面的项目管理工具是必不可少的。然而,市面上许多商业项目管理软件不仅价格昂贵,而且操作复杂,让很多团队望而却步。这时,开源的Leantime就成为了众多团队的理想选择。

1.关于Leantime

Leantime是一款专为小型团队和初创公司设计的开源项目管理系统。它使用PHP和JavaScript编写,并采用MySQL作为数据库。Leantime提供了从项目计划、任务分配到进度跟踪的全方位解决方案,帮助团队更好地管理项目。其界面简洁直观,用户可以快速上手,无需复杂的培训。

Leantime的主要功能包括:

  • 多种任务管理视图:看板、甘特图、表格、列表和日历等。
  • 强大的项目规划功能:帮助用户制定清晰的目标并详细计划。
  • 目标与指标追踪:设定项目目标和关键指标,实时追踪进展。
  • 时间记录:分析时间开销,优化工作流程。
  • 信息管理:支持创建项目文档,方便团队成员查阅和学习。
  • 团队协作:提供沟通交流平台,提高协作效率。

为什么选择Leantime?

  1. 开源免费:完全开源,用户可以免费下载使用,并根据需求进行定制和扩展。
  2. 简单易用:界面简洁直观,适合没有项目管理经验的用户快速上手。
  3. 功能全面:涵盖项目管理的各个关键环节,从任务管理到团队协作,都能提供完善的解决方案。
  4. 灵活性强:支持多种安装方式,并允许用户根据需求进行定制和扩展。

2.本地部署Leantime

本例使用Docker Compose部署,如果没有安装Docker,可以查看这篇教程进行安装:《Docker安装教程——Linux、Windows、MacOS》

在开始安装之前,请确保您的系统上已经安装了以下软件:

Docker: 用于容器化应用程序。 Docker Compose: 用于定义和运行多容器 Docker 应用程序。

首先,从 GitHub 克隆 Leantime 的 Docker 项目仓库:

git clone https://github.com/Leantime/docker-leantime.git

进入克隆下来的项目目录:

cd docker-leantime

复制示例环境变量文件并进行必要的配置:

cp sample.env .env

编辑 .env 文件,根据您的需求配置数据库连接信息和其他环境变量。

使用 Docker Compose 启动 Leantime 容器:

sudo docker compose up -d

容器启动后,打开浏览器并访问localhost:8081,您将看到 Leantime 的登录界面

3.Leantime简单实用

按照提示完成初始化配置,首先创建管理员账户,创建以后直接登录。

在这里可以邀请你的工作同事们,输入他们的邮箱账号,我这里选择跳过。

完成后,你就可以开始使用Leantime进行项目管理了!

可以看到界面特别美观,这是因为Leantime在设计时考虑到了多动症(ADHD)、阅读障碍(Dyslexia)和自闭症(Autism Spectrum Disorder, ASD)等特殊用户的使用体验。具体表现在以下几个方面:

  • 简洁的界面:减少视觉干扰,提高用户集中度。
  • 清晰的导航:逻辑性强,易于理解和操作。
  • 高对比度模式:提供高对比度主题,帮助阅读障碍和视力受限的用户更好地识别内容。
  • 可定制性:允许用户根据自己的需求调整界面布局和颜色方案。

To-Dos(待办事项)

媲美Coding的待办事项列表。支持设定事项类型,优先级,状态,工作量,工作时间等等一系列操作,支持拖拽变更事项状态。支持表格,列表,时间线等多种看板视图。

Goals(目标)

Leantime的Goals板块为目标设定提供了同样引人入胜的体验,简介而高效的操作面板使用户轻松设定目标、追踪任务进度,并清晰了解目标的潜在风险。这一板块设计直观,使用户能够一览无余地了解整个目标的情况。

Ideas(灵感)

你可以在Leantime中及时记录每一次灵感的闪现。想法是推动进步的引擎,但很容易被遗忘。在这里,你可以轻松地追踪和存档你的灵感,将它们与当前待办事项和进行中的工作相联系。

4.安装内网穿透

不过我们目前只能在本地局域网内使用电脑等设备访问刚刚使用docker部署的使用Leantime。使用Leantime+ Cpolar的组合可以完美解决这个问题,安装一个cpolar内网穿透工具就能轻松实现远程访问内网主机中部署的服务了,接下来介绍一下如何安装cpolar内网穿透。

下面是安装cpolar步骤:

Cpolar官网地址: https://www.cpolar.com

使用一键脚本安装命令

sudo curl https://get.cpolar.sh | sh

安装完成后,执行下方命令查看cpolar服务状态:(如图所示running即为正常启动)

sudo systemctl status cpolar

Cpolar安装和成功启动服务后,在浏览器上输入ubuntu主机IP加9200端口即:【http://localhost:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:

5.配置Leantime公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了:Leantime,注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:8081
  • 域名类型:随机域名
  • 地区:选择China Top

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了两个公网地址,接下来就可以在其他电脑(异地)上,使用任意一个地址在浏览器中访问即可。

如下图所示,成功实现使用公网地址异地远程访问本地部署的Leantime.

小结

为了方便演示,我们在上边的操作过程中使用cpolar生成的HTTP公网地址隧道,其公网地址是随机生成的。这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。

如果有长期使用Leantime,或者异地访问与使用其他本地部署的服务的需求,但又不想每天重新配置公网地址,还想让公网地址好看又好记并体验更多功能与更快的带宽,那我推荐大家选择使用固定的二级子域名方式来配置公网地址。

6. 配置固定公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化。

注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】

点击左侧的预留,选择保留二级子域名,地区选择China TOP,然后设置一个二级子域名名称,填写备注信息,点击保留。

保留成功后复制保留的二级子域名地址:Leantime

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道Leantime,点击右侧的编辑

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区: China TOP

点击更新

现在一个永久不会变化的网址就设置好了。

我们复制下来打开浏览器粘贴,现在我们使用固定的公网地址访问Leantime可以看到访问成功。

接下来就可以随时随地进行公网访问Leantime了,把公网地址分享给身边的人,还可以方便团队协作。以上就是如何在Linux Ubuntu系统Docker本地安装Leantime并实现异地远程访问的全部过程,感谢观看!

更多项目详情可以访问作者Github项目主页:
https://github.com/Leantime/leantime?tab=readme-ov-file

相关推荐

CentOS 7 搭建 Harbor2.4.1 Docker镜像仓库

上一篇文章我们使用了registry镜像来搭建Docker私有镜像仓库,但是使用体验不是很好,没有一个可管理的UI界面,管理很麻烦。本篇文章将介绍一个新的搭建Docker镜像仓库的工具叫做Har...

简单认识认识mqtt及mosquitto(mqtt报文解析)

某项目中使用了MQTT作为进程间的通信方式,之前没用过,这两篇笔记我们就来一起学习一下这种方式。MQTT的一些介绍以下介绍内容来自《[野火]《LwIP应用开发实战指南》MQTT协议全称是Messa...

全源码打造高性能 LNMP 架构: 实战教程(2025最新版)

适用场景:企业生产环境、自建Web服务、深度性能调优操作系统:CentOS7/8、RockyLinux、Debian、Ubuntu(本文以CentOSStream9为例)技术栈:N...

Nacos3.0重磅来袭!全面拥抱AI,单机及集群模式安装详细教程!

之前和大家分享过JDK17的多版本管理及详细安装过程,然后在项目升级完jdk17后又发现之前的注册和配置中心nacos又用不了,原因是之前的nacos1.3版本的,版本太老了,已经无法适配当前新的JD...

Ubuntu24.04.2 企业级MinIO存储系统部署指南

一、概要1.1MinIO架构解析MinIO是一款高性能的云原生对象存储系统,采用Golang开发并遵循ApacheLicensev2.0协议。其核心架构基于纠删码(ErasureCode)技...

从零打造自己的 国产鸿蒙(OpenHarmony)定制系统-完整可落地流程

适用版本:OpenHarmony4.0/5.0Standard目标人群:想在x86PC、RK3568开发板或自有硬件上裁剪、加品牌、预装应用并生成可刷机镜像的开发者/团队目录环境准...

一次暂未成功的dify安装经历(dify怎么安装)

前几天在阿里云买了一台机,这几天一直在尝试安装dify,到现在还没安装上我是按这个教程装的https://blog.csdn.net/2401_82469710/article/details/14...

ZLMediaKit教程(五)支持webrtc(webrtc lib)

ZLMediaKit系列文章(共六篇):ZLMediaKit流媒体(一)编译安装ZLMediaKit教程(二)主程序和配置文件解析ZLMediaKit教程(三)URL规则ZLMediaKit教程...

Linux程序安装与管理指南(linux程序安装命令大全)

在Linux系统中,安装和管理程序主要通过包管理器和手动编译安装两种主要方式实现。以下是详细的操作指南,涵盖常见发行版(如Ubuntu/Debian、CentOS/RHEL、Fedora等)的用法。一...

离线状态下安装 Nginx 各个模块?这篇攻略让你轻松搞定

你是不是也在为离线状态下安装Nginx各个模块而发愁?在互联网大厂后端开发工作中,我们常常会遇到一些特殊的网络环境,比如公司内部的离线服务器,或是处于隔离状态的测试环境。当需要在这些离线环境中安装...

Rust实践:Win10环境下的openssl交叉编译

Rust支持跨平台,可以指定生成目标平台,交叉编译也是支持的。当然,想要交叉编译成功,还需要指定平台的编译器(如:msvc、gcc等)。openssl是C语言开发的库,如果在Rust代码中用到open...

Linux下Blackwell架构显卡(RTX5070/5090)编译PaddlePaddle指南

Blackwell显卡架构如RTX5070\5090等显卡当前Paddle预编译版本中包含的GPU架构(即SM架构)是有限的,比如常见的SM75(T4)、SM86(A10)、SM89(...

突破操作系统界限,掌握Linux的必备指南

#头条创作挑战赛#简介Linux是一种开源的操作系统,它的核心思想是自由和开放。Linux以其稳定性、可靠性和安全性而闻名,被广泛用于服务器和嵌入式设备中。Linux创始人Linux安装在安装Linu...

Linux日常高频使用的100条命令,强烈建议收藏

查看系统信息如何查看系统版本:uname-alsb_release-acat/etc/os-release如何查看系统内核信息:uname-r如何查看系统CPU信息:lscpucat...

Linux文件系统结构全解析(linux文件结构详解)

对Linux新手而言,“一切皆文件”的设计哲学常让人既兴奋又困惑——打开终端输入ls/,看到的bin、etc、var等目录到底有什么用?如何快速定位关键文件?本文将从Linux文件系统的底层逻...

取消回复欢迎 发表评论: