【打工日常】云原生之使用docker部署项目组文档管理系统

本文主要是介绍【打工日常】云原生之使用docker部署项目组文档管理系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、Teedy介绍  

1.Teedy简介  

Teedy是一个开源的、自定义程度非常高的文档管理工具,比较适合于项目组用于文档管理,协作存储相当方便。

创建和编辑文档:用户可以使用Markdown格式创建和编辑文档,还可以添加标签和注释。 

文件上传和管理:用户可以上传和管理文档、图片和其他文件。

搜索和过滤:Teedy支持关键词搜索和标签过滤,使用户可以快速找到需要的文档。 

分享和协作:用户可以将文档分享给其他人,还可以设置权限和共享链接。   

界面自定义:Teedy提供了多种主题和布局,用户可以根据自己的喜好进行自定义。

安全性和隐私保护:Teedy支持SSL加密、用户认证和数据库加密等安全性和隐私保护功能

二、本次实践介绍  

1. 本次实践简介  

a.本次实践部署环境为个人笔记本ubuntu日常工作的测试环境,若是生产环境请谨慎部署; 

b.本次实践为快速使用docker部署开源Teedy于个人ubuntu上。 

c.项目地址https://github.com/sismics/docs/

2. 本地环境规划  

本次实践环境规划:下载镜像sismics/docs:latest,通过docker-cli或者docker compose启动容器  

镜像命名IP地址容器镜像版本操作系统版本
Teedylocalhostlatestubuntu 22.04

三、检查本地Docker环境  

1. 检查本地Docker版本  

检查Docker版本:docker version    root@WellDone:/home/goodjob# docker version    
Client: Docker Engine - Community    
Version:           25.0.0    
API version:       1.44    
Go version:       go1.21.6    
Git commit:       e758fe5    
Built:             Thu Jan 18 17:09:49 2024    
OS/Arch:           linux/amd64    
Context:           default    Server: Docker Engine - Community    
Engine:    
Version:         25.0.0    
API version:     1.44 (minimum version 1.24)    
Go version:       go1.21.6    
Git commit:       615dfdf    
Built:           Thu Jan 18 17:09:49 2024    
OS/Arch:         linux/amd64    
Experimental:     false    
containerd:    
Version:         1.6.27    
GitCommit:       a1496014c916f9e62104b33d1bb5bd03b0858e59    
runc:    
Version:         1.1.11    
GitCommit:       v1.1.11-0-g4bccb38    
docker-init:    
Version:         0.19.0    
GitCommit:       de40ad0    
root@WellDone:/home/goodjob#  

2. 检查Docker服务状态  

检查Docker服务状态,确保Docker服务正常运行。 

systemctl status docker    root@WellDone:/home/goodjob/Downloads# systemctl status docker    
● docker.service - Docker Application Container Engine    Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)    Active: active (running) since Wed 2024-01-24 08:54:31 CST; 1 day 4h ago    
TriggeredBy: ● docker.socket    Docs: https://docs.docker.com    Main PID: 1549 (dockerd)    Tasks: 65    Memory: 419.5M    CPU: 38.874s    CGroup: /system.slice/docker.service    ├─ 1549 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock    ├─ 2010 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 6379 -container-ip 172.17.0.2 -container-port 6379    ├─ 2016 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 6379 -container-ip 172.17.0.2 -container-port 6379    ├─ 2029 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 5432 -container-ip 172.17.0.3 -container-port 5432    ├─ 2036 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 5432 -container-ip 172.17.0.3 -container-port 5432    ├─123083 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 8888 -container-ip 172.17.0.4 -container-port 8080    └─123095 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 8888 -container-ip 172.17.0.4 -container-port 8080    1月 24 08:54:31 WellDone dockerd[1549]: time="2024-01-24T08:54:31.067895045+08:00" level=info msg="API listen on /run/docker.sock"    
1月 24 08:54:31 WellDone systemd[1]: Started Docker Application Container Engine.    
1月 24 16:13:48 WellDone dockerd[1549]: time="2024-01-24T16:13:48.185008219+08:00" level=info msg="ignoring event" container=8ad99af82d8a41dd661d>    
1月 24 16:13:48 WellDone dockerd[1549]: time="2024-01-24T16:13:48.189484205+08:00" level=warning msg="ShouldRestart failed, container will not be>    
1月 24 21:58:08 WellDone dockerd[1549]: time="2024-01-24T21:58:08.024915139+08:00" level=info msg="ignoring event" container=27fd28e2993f31b170b8>    
1月 24 21:58:08 WellDone dockerd[1549]: time="2024-01-24T21:58:08.029986730+08:00" level=warning msg="ShouldRestart failed, container will not be>    
1月 25 10:46:16 WellDone dockerd[1549]: time="2024-01-25T10:46:16.329180722+08:00" level=info msg="Container failed to exit within 10s of signal >    
1月 25 10:46:16 WellDone dockerd[1549]: time="2024-01-25T10:46:16.350757439+08:00" level=info msg="ignoring event" container=b1223add00f36bbb3246>    
1月 25 10:49:21 WellDone dockerd[1549]: time="2024-01-25T10:49:21.993755983+08:00" level=info msg="Container failed to exit within 10s of signal >    
1月 25 10:49:22 WellDone dockerd[1549]: time="2024-01-25T10:49:22.015822650+08:00" level=info msg="ignoring event" container=edb0e153b45dbe62acd8>    
lines 1-28/28 (END)  

四、下载Teedy镜像  

1.下载Teedy镜像  root@HEJIAJIN-FX506HE:/home/welldone# docker pull sismics/docs
Using default tag: latest
latest: Pulling from sismics/docs
c5cc0d8681c1: Pull complete
25992ae88689: Pull complete
92b293e28b63: Pull complete
5e97fb8c1b1b: Pull complete
e89d6de98e44: Pull complete
9181ab0a3cc7: Pull complete
986d85dbde77: Pull complete
ff6f9607eef5: Pull complete
e1f18d97e35f: Pull complete
5827635e4d0f: Pull complete
3a2abf46fbbe: Pull complete
e2d1dd553bca: Pull complete
d64ca9609368: Pull complete
57b31095515c: Pull complete
afd0e1b54580: Pull complete
d4dc52236c92: Pull complete
df51b630111c: Pull complete
b7f71ce56e9d: Pull complete
aabd4c468f60: Pull complete
9a77c3212377: Pull complete
Digest: sha256:e86804e995a0be52ee81231bfcbeb8b7003a15fd5dc24b300e23f498850d9aa2
Status: Downloaded newer image for sismics/docs:latest
docker.io/sismics/docs:latest  2.使用docker-compose启动一个Teedy的容器    version: '3.9'
services:docs:image: sismics/docscontainer_name: Teedyvolumes:- '/container/teedy/data:/data'environment:- DOCS_ADMIN_PASSWORD_INIT="$$2a$$05$$PcMNUbJvsk7QHFSfEIDaIOjk1VI9/E7IPjTKx.jkjPxkx2EOKSoPS"- DOCS_ADMIN_EMAIL_INIT=admin@example.com- 'DOCS_BASE_URL=http://localhost:4498'ports:- '4498:8080'restart: always3.使用docker-cli启动一个Teedy的容器docker run -d \
--restart always \
-p 4498:8080 \
-e DOCS_BASE_URL=http://localhost:4498 \
-e DOCS_ADMIN_EMAIL_INIT=admin@example.com \
-e DOCS_ADMIN_PASSWORD_INIT="$$2a$$05$$PcMNUbJvsk7QHFSfEIDaIOjk1VI9/E7IPjTKx.jkjPxkx2EOKSoPS" \
-v /data/teedy/data:/data \
--name Teedy \
sismics/docs:latest4.查看Teedy容器状态  root@HEJIAJIN-FX506HE:/container/docker-compose/docker-firsttest# docker compose psNAME     IMAGE         COMMAND             SERVICE   CREATED         STATUS         PORTS
Teedy     sismics/docs   "bin/jetty.sh run"   docs     4 seconds ago   Up 3 seconds   0.0.0.0:4498->8080/tcp, :::4498->8080/tcp

六、访问reference首页  

访问地址http://localhost:4498 账号admin,密码superSecure

图片

图片

图片

这篇关于【打工日常】云原生之使用docker部署项目组文档管理系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/982223

相关文章

postgresql使用UUID函数的方法

《postgresql使用UUID函数的方法》本文给大家介绍postgresql使用UUID函数的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录PostgreSQL有两种生成uuid的方法。可以先通过sql查看是否已安装扩展函数,和可以安装的扩展函数

如何使用Lombok进行spring 注入

《如何使用Lombok进行spring注入》本文介绍如何用Lombok简化Spring注入,推荐优先使用setter注入,通过注解自动生成getter/setter及构造器,减少冗余代码,提升开发效... Lombok为了开发环境简化代码,好处不用多说。spring 注入方式为2种,构造器注入和setter

MySQL中比较运算符的具体使用

《MySQL中比较运算符的具体使用》本文介绍了SQL中常用的符号类型和非符号类型运算符,符号类型运算符包括等于(=)、安全等于(=)、不等于(/!=)、大小比较(,=,,=)等,感兴趣的可以了解一下... 目录符号类型运算符1. 等于运算符=2. 安全等于运算符<=>3. 不等于运算符<>或!=4. 小于运

使用zip4j实现Java中的ZIP文件加密压缩的操作方法

《使用zip4j实现Java中的ZIP文件加密压缩的操作方法》本文介绍如何通过Maven集成zip4j1.3.2库创建带密码保护的ZIP文件,涵盖依赖配置、代码示例及加密原理,确保数据安全性,感兴趣的... 目录1. zip4j库介绍和版本1.1 zip4j库概述1.2 zip4j的版本演变1.3 zip4

Python 字典 (Dictionary)使用详解

《Python字典(Dictionary)使用详解》字典是python中最重要,最常用的数据结构之一,它提供了高效的键值对存储和查找能力,:本文主要介绍Python字典(Dictionary)... 目录字典1.基本特性2.创建字典3.访问元素4.修改字典5.删除元素6.字典遍历7.字典的高级特性默认字典

使用Python构建一个高效的日志处理系统

《使用Python构建一个高效的日志处理系统》这篇文章主要为大家详细讲解了如何使用Python开发一个专业的日志分析工具,能够自动化处理、分析和可视化各类日志文件,大幅提升运维效率,需要的可以了解下... 目录环境准备工具功能概述完整代码实现代码深度解析1. 类设计与初始化2. 日志解析核心逻辑3. 文件处

MySQL 主从复制部署及验证(示例详解)

《MySQL主从复制部署及验证(示例详解)》本文介绍MySQL主从复制部署步骤及学校管理数据库创建脚本,包含表结构设计、示例数据插入和查询语句,用于验证主从同步功能,感兴趣的朋友一起看看吧... 目录mysql 主从复制部署指南部署步骤1.环境准备2. 主服务器配置3. 创建复制用户4. 获取主服务器状态5

Java docx4j高效处理Word文档的实战指南

《Javadocx4j高效处理Word文档的实战指南》对于需要在Java应用程序中生成、修改或处理Word文档的开发者来说,docx4j是一个强大而专业的选择,下面我们就来看看docx4j的具体使用... 目录引言一、环境准备与基础配置1.1 Maven依赖配置1.2 初始化测试类二、增强版文档操作示例2.

一文详解如何使用Java获取PDF页面信息

《一文详解如何使用Java获取PDF页面信息》了解PDF页面属性是我们在处理文档、内容提取、打印设置或页面重组等任务时不可或缺的一环,下面我们就来看看如何使用Java语言获取这些信息吧... 目录引言一、安装和引入PDF处理库引入依赖二、获取 PDF 页数三、获取页面尺寸(宽高)四、获取页面旋转角度五、判断

C++中assign函数的使用

《C++中assign函数的使用》在C++标准模板库中,std::list等容器都提供了assign成员函数,它比操作符更灵活,支持多种初始化方式,下面就来介绍一下assign的用法,具有一定的参考价... 目录​1.assign的基本功能​​语法​2. 具体用法示例​​​(1) 填充n个相同值​​(2)