【Docker项目实战】使用Docker部署Tasks.md任务管理白板

一、Tasks.md介绍

1.1 Tasks.md简介

  • Tasks.md简介

Tasks.md:一个自托管的基于文件的任务管理板,支持 Markdown 语法。

1.2 Tasks.md特点

  • 在现代且响应迅速的界面中创建卡片、列表和标签;
  • 将卡片写成 Markdown 文件;
  • 使用单个 Docker 映像轻松安装;
  • 浅色和深色主题与操作系统设置同步;
  • 重度可定制,有 3 种默认颜色主题(Adwaita、Nord 和 Catppuccin);
  • 支持基于子路径的反向代理,带有基本路径的环境变量;

二、本地环境介绍

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为centos7.6。

hostnameIP地址操作系统版本Docker版本
jeven192.168.3.166centos 7.620.10.17

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署Tasks.md务管理白板。

三、本地环境检查

3.1 检查Docker服务状态

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

[root@jeven ~]#  systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
   Active: active (running) since Fri 2023-12-29 11:24:12 CST; 3h 40min ago
     Docs: https://docs.docker.com
 Main PID: 10509 (dockerd)
    Tasks: 23
   Memory: 149.6M
   CGroup: /system.slice/docker.service
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.

3.2 检查Docker版本

检查Docker版本

[root@jeven ~]# docker -v
Docker version 20.10.17, build 100c701
  • 1.
  • 2.

3.3 检查docker compose 版本

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

[root@jeven ~]# docker compose version
Docker Compose version v2.6.0
  • 1.
  • 2.

四、下载Tasks.md镜像

从docker hub拉取Tasks.md镜像

[root@jeven ~]# docker pull baldissaramatheus/tasks.md
Using default tag: latest
latest: Pulling from baldissaramatheus/tasks.md
63b65145d645: Already exists
f8518ebe68c1: Pull complete
f46539d57b58: Pull complete
08d01e4aac7e: Pull complete
c6c2b86bbf5b: Pull complete
e5b6cd273214: Pull complete
4f4fb700ef54: Pull complete
Digest: sha256:d3f05c2d23a6521d095d37455296911a6cf8bf7fa21d85885b5912edd9821d0c
Status: Downloaded newer image for baldissaramatheus/tasks.md:latest
docker.io/baldissaramatheus/tasks.md:latest
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.

五、部署Tasks.md

5.1 使用docker-cli创建Tasks.md容器

使用docker-cli快速部署Tasks.md容器

docker run -d \
  --name tasks.md \
  -e PUID=1000 \
  -e PGID=1000 \
  -e ENABLE_LOCAL_IMAGES=false  \
  -p 8980:8080 \
  -v /data/taskmd/cards/:/api/files/ \
  -v /data/taskmd/styles/:/api/static/stylesheets/  \
  -v /data/taskmd/images/:/api/images/  \
  --restart unless-stopped \
  baldissaramatheus/tasks.md
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.

5.2 编辑docker-compose.yaml文件

本次实践使用docker compose方式运行Tasks.md容器,编辑docker-compose.yaml文件内容如下:

version: "3"
services:
  tasks-md:
      hostname: tasks-md
      container_name: tasks-md
      image: baldissaramatheus/tasks.md
      environment:
        - PUID=1000
        - PGID=1000
      volumes:
          - api-data:/api/files
          - stylesheets-data:/api/static/stylesheets/
      restart: unless-stopped
      ports:
        - 8980:8080
volumes:
  api-data:
    driver: local
  stylesheets-data:
    driver: local

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.

5.3 运行Tasks.md容器

  • 使用docker-compose.yaml文件创建容器容器
[root@jeven taskmd]# docker compose up -d
[+] Running 4/4
 ⠿ Network taskmd_default            Created                                                                            0.0s
 ⠿ Volume "taskmd_stylesheets-data"  Created                                                                            0.0s
 ⠿ Volume "taskmd_api-data"          Created                                                                            0.0s
 ⠿ Container tasks-md                Started                                                                            1.1s
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

5.4 检查Tasks.md容器状态

检查Tasks.md容器状态,确Tasks.md容器正常启动。

[root@jeven taskmd]# docker ps
CONTAINER ID   IMAGE                        COMMAND                   CREATED          STATUS          PORTS                      NAMES
537b9774f0e5   baldissaramatheus/tasks.md   "/bin/sh -c '[ -z \"$…"   33 seconds ago   Up 32 seconds   0.0.0.0:8980->8080/tcp, :::8980->8080/tcp   tasks-md
  • 1.
  • 2.
  • 3.

六、访问Tasks.md首页

访问地址: http://192.168.3.166:8980/,将IP替换为自己服务器IP地址,进入到Tasks.md首页。如果无法访问,则检查服务器防火墙是否设置,云服务器的安全组端口是否放行等。

【Docker项目实战】使用Docker部署Tasks.md任务管理白板_docker

新增卡片,列表和标签。

【Docker项目实战】使用Docker部署Tasks.md任务管理白板_容器_02

插入markdown语法的文件

【Docker项目实战】使用Docker部署Tasks.md任务管理白板_Docker_03
【Docker项目实战】使用Docker部署Tasks.md任务管理白板_Docker_04

七、总结

Tasks.md 是一款简单的任务管理面板,它的部署非常简单,只需使用 Docker 就能快速部署。它的界面简洁易用,适合日常使用。Tasks.md 支持使用 Markdown 语法进行任务管理,提供了简单易用、文件管理、跨平台和 Markdown 支持等优点。通过使用 Tasks.md,我们可以更好地组织和管理任务,提高工作效率。