当前位置: 首页 > news >正文

【Docker项目实战】使用Docker部署Vikunja任务管理工具

【Docker项目实战】使用Docker部署Vikunja任务管理工具

  • 一、Vikunja介绍
    • 1.1 Vikunja简介
    • 1.2 主要特点
  • 二、本次实践规划
    • 2.1 本地环境规划
    • 2.2 本次实践介绍
  • 三、本地环境检查
    • 3.1 检查Docker服务状态
    • 3.2 检查Docker版本
    • 3.3 检查docker compose 版本
  • 四、下载Vikunja镜像
  • 五、部署Vikunja应用
    • 5.1 创建部署目录
    • 5.2 编辑部署文件
    • 5.3 创建Vikunja容器
    • 5.4 查看Vikunja容器状态
    • 5.5 查看Vikunja容器日志
  • 六、访问Vikunja服务
    • 6.1 访问Vikunja初始页
    • 6.2 注册账号
  • 七、基本使用
    • 7.1 系统设置
    • 7.2 新建项目和团队
    • 7.3 创建任务
    • 7.4 完成任务
    • 7.5 其余任务形式
  • 八、总结

一、Vikunja介绍

1.1 Vikunja简介

Vikunja是一款功能强大的开源任务管理工具,它帮助用户以一种有组织的方式管理和跟踪所有待办事项。就像一个拥有超能力的笔记本,Vikunja允许个人或团队轻松地规划、协作并完成项目。无论是个人使用还是团队合作,Vikunja都提供了灵活性和定制性,让用户能够根据自己的需求调整任务管理方式。

1.2 主要特点

  1. 高效组织:

    • 用户可以通过创建项目、子项目来对任务进行分层管理,确保所有相关的工作都被合理归类。
  2. 协作功能:

    • 支持轻松分享项目给其他用户或整个团队,并通过分配任务明确每个人的责任,便于团队成员之间的合作。
  3. 多视图支持:

    • 提供多种任务查看方式,包括经典的列表视图、甘特图、表格视图以及看板(Kanban Board),满足不同用户的偏好和需求。
  4. 开源精神:

    • Vikunja采用AGPLv3开源许可证发布,鼓励社区参与贡献。无论是否是开发者,使用者都可以通过报告希望添加的功能或发现的bug来为项目做出贡献。对于熟悉Go语言或Vue.js框架的开发者而言,更是可以直接参与到项目的开发中去。

二、本次实践规划

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为|Ubuntu 22.04.1。

hostnameIP地址操作系统版本Docker版本镜像版本
jeven01192.168.3.88Ubuntu 22.04.1 LTS27.1.1latest

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署Vikunja任务管理工具。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

root@jeven01:~# systemctl status docker
● docker.service - Docker Application Container EngineLoaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)Active: active (running) since Fri 2024-11-01 00:45:50 CST; 2 weeks 4 days agoDocs: https://docs.docker.comMain PID: 10450 (dockerd)Tasks: 60 (limit: 9387)Memory: 1.8GCPU: 33min 54.335sCGroup: /system.slice/docker.service

3.2 检查Docker版本

检查Docker版本

root@jeven01:~# docker -v
Docker version 27.1.1, build 6312585

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

root@jeven01:~# docker compose version
Docker Compose version v2.19.1

四、下载Vikunja镜像

拉取Vikunja镜像,镜像名称为:registry.cn-hangzhou.aliyuncs.com/jeson/vikunja:latest

root@jeven01:~# docker pull registry.cn-hangzhou.aliyuncs.com/jeson/vikunja:latest
Using default tag: latest
latest: Pulling from vergoh/vnstat
Digest: sha256:8b55c1d3c9a10fabbecd64c9e2b30b316924fa4bfbdb413c2813ab8bf527aaee
Status: Image is up to date for vergoh/vnstat:latest
docker.io/vergoh/vnstat:latest

五、部署Vikunja应用

5.1 创建部署目录

  • 创建部署目录
mkdir -p /data/vikunja/{files,data}   &&  cd  /data/vikunja/
  • 目录授权
chmod -R 777 /data/vikunja/

5.2 编辑部署文件

如果使用docker-cli与sqlite数据库轻量部署,可参考以下命令:

docker run -d -p 3456:3456 -v $PWD/files:/app/vikunja/files -v $PWD/data:/db registry.cn-hangzhou.aliyuncs.com/jeson/vikunja:latest

在`部署目录下,创建docker-compose.yaml文件,如下所示:

vim docker-compose.yaml
version: '3.9'
services:vikunja:restart: alwayscontainer_name: vikunjaimage: 'registry.cn-hangzhou.aliyuncs.com/jeson/vikunja:latest'volumes:- '/data/vikunja/db:/db'- '/data/vikunja/files:/app/vikunja/files'ports:- '3456:3456'

5.3 创建Vikunja容器

执行以下命令,创建Vikunja容器。

root@jeven01:/data/vikunja# docker compose up -d
[+] Running 2/2✔ Network vikunja_default  Created                                                                                                               0.1s✔ Container vikunja        Started                                                                                                               0.2s

5.4 查看Vikunja容器状态

检查Vikunja容器状态状态,确保Vikunja容器正常启动。

root@jeven01:/data/vikunja# docker compose ps
NAME                IMAGE                                                    COMMAND                  SERVICE             CREATED             STATUS           PORTS
vikunja             registry.cn-hangzhou.aliyuncs.com/jeson/vikunja:latest   "/app/vikunja/vikunja"   vikunja             15 minutes ago      Up 15 minutes       0.0.0.0:3456->3456/tcp, :::3456->3456/tcp

5.5 查看Vikunja容器日志

检查Vikunja容器日志,确保Vikunja服务正常运行。

root@jeven01:/data/vikunja# docker compose logs
vikunja  | 2025-02-23T07:08:21Z: INFO	▶ 001 No config file found, using default or config from environment variables.
vikunja  | 2025-02-23T07:08:21Z: INFO	▶ 002 Running migrations…
vikunja  | 2025-02-23T07:08:21Z: INFO	▶ 06a Ran all migrations successfully.
vikunja  | 2025-02-23T07:08:21Z: INFO	▶ 06b Mailer is disabled, not sending reminders per mail
vikunja  | 2025-02-23T07:08:21Z: INFO	▶ 06c Mailer is disabled, not sending overdue per mail
vikunja  | 2025-02-23T07:08:21Z: INFO	▶ 06d Vikunja version v0.24.6
vikunja  | ⇨ http server started on [::]:3456

六、访问Vikunja服务

6.1 访问Vikunja初始页

请访问 http://<个人的服务器IP>:3456 查看Vikunja服务的初始页。如果无法访问,请确保宿主机的防火墙已关闭或已放行相关端口,对于云服务器还需配置相应的安全组规则。

在这里插入图片描述

6.2 注册账号

请先点击“注册账号”选项,进入Vikunja账号注册页面完成注册流程。

在这里插入图片描述

自定义填写账号信息,填写完毕后,确认创建即可。

在这里插入图片描述
在这里插入图片描述

七、基本使用

7.1 系统设置

在上方的账号下拉框中,点击“设置”选项,即可访问系统设置界面,我们可以在其中进行各种设置操作,例如修改当前账号的密码。

在这里插入图片描述

7.2 新建项目和团队

  • 新建项目:在项目管理页面,点击“新项目”,开始创建新项目。

在这里插入图片描述
在这里插入图片描述

  • 创建团队:在团队管理页面,选择创建团队,填写团队名称后,确认即可。

在这里插入图片描述

7.3 创建任务

在项目管理页面,在我们刚才创建的项目学习下,可以选择列表、甘特图、表格、看板等几种任务形式。填写任务名称后,点击添加,则该任务创建完成。

在这里插入图片描述

可点击具体任务,进行详细编辑。

在这里插入图片描述

7.4 完成任务

点击任务列表中的具体任务,该任务前的小方框会自动勾选,表示此任务已完成。

在这里插入图片描述

7.5 其余任务形式

  • 甘特图效果:

在这里插入图片描述

  • 表格效果:

在这里插入图片描述

  • 看板效果:

在这里插入图片描述

八、总结

在本次实践中,通过一步步部署和使用Vikunja,我们体验到了它在项目管理和团队协作方面的便捷与高效。 Vikunja的直观操作界面和灵活的任务管理功能,使得创建、分配及完成任务变得异常简单,极大地提升了工作效率。这次实践不仅帮助我们掌握了Vikunja的部署流程,还让我们认识到它作为一个强大工具,在实际工作中的应用潜力。

http://www.dtcms.com/a/327700.html

相关文章:

  • 【C语言强化训练16天】--从基础到进阶的蜕变之旅:Day2
  • 嵌入式 - Linux软件编程:文件IO
  • 零售业CRM实战:如何打通线上线下客户数据?
  • Ansible 基本使用
  • UE官方文档学习 C++ TAarry 查询(三)Contain,Find函数的使用
  • Redis--day4--实战-黑马点评--搭建环境
  • WPS JS宏 通用方法整理汇总 实时更新
  • 【Vue 3 响应式系统深度解析:reactive vs ref 全面对比】
  • MySQL(下)
  • C语言入门完结篇_结构体、枚举、时间函数的、变量类型(C语言划分内存各个区块的方法)、文件操作
  • MyBatis 缓存与 Spring 事务相关笔记
  • Spring-Cache 缓存数据
  • damn the jvm again(2)
  • 编程模型设计空间的决策思路
  • 什么是跨域访问问题,如何解决?
  • Windows怎样配置动态磁盘
  • [SC]SystemC中的SC_FORK和SC_JOIN用法详细介绍
  • android端自定义通话通知
  • VUE的8个生命周期
  • Orange的运维学习日记--41.Ansible基础入门
  • sqli-labs通关笔记-第44关 POST字符型堆叠注入(单引号闭合 手工注入+脚本注入3种方法)
  • demo 英雄热度榜 (条件筛选—高亮切换—列表渲染—日期显示)
  • Full GC 频率优化实战
  • RGWRados::get_obj_state_impl()
  • 25C机场航班调度程序(JS 100)
  • 【智能硬件】2025年儿童智能手表革命:守护隐私的科技堡垒
  • AQS的理解
  • B树索引和B+树索引有什么区别?
  • 编译 BusyBox for ARM 平台
  • 数据结构:图