Docker部署Dillinger个人文本编辑器

news2024/11/24 16:55:58

Docker部署Dillinger个人文本编辑器

  • 一、Dillinger介绍
    • 1.1 Dillinger简介
    • 1.2 Dillinger使用场景
  • 二、本地环境介绍
    • 2.1 本地环境规划
    • 2.2 本次实践介绍
  • 三、本地环境检查
    • 3.1 检查Docker服务状态
    • 3.2 检查Docker版本
    • 3.3 检查docker compose 版本
  • 四、拉取Dillinger镜像
  • 五、部署Dillinger应用
    • 5.1 创建部署目录
    • 5.2 创建Dillinger容器
    • 5.3 查看Dillinger容器状态
    • 5.4 查看Dillinger容器日志
  • 六、访问Dillinger首页
  • 七、基本使用
    • 7.1 新建文档
    • 7.2 导出文档
  • 八、总结

一、Dillinger介绍

1.1 Dillinger简介

Dillinger 是一个基于云、可移动的离线存储、基于AngularJS的H5 Markdown编辑器。

1.2 Dillinger使用场景

Dillinger作为一个集成了云端存储功能、支持离线使用并基于AngularJS框架的H5 Markdown编辑器,它的使用场景非常广泛,尤其适合以下几类用户和情境:

  1. 博客作者与内容创作者:对于经常需要编写博客文章、技术文档、新闻稿等内容的创作者而言,Dillinger提供了一个高效的编辑环境。用户可以在任何有网络连接的地方登录自己的账户进行创作,并且利用Markdown语法快速格式化文本,提升写作效率。离线存储功能意味着即便在没有网络的环境下也能继续工作,确保创意不间断。

  2. 程序员和技术文档撰写者:由于Markdown语言在程序员和技术社区中极为流行,Dillinger成为编写代码示例、API文档、技术教程的理想工具。它支持实时预览功能,帮助作者即时查看文档的渲染效果,确保技术说明的准确性。

  3. 学生和教育工作者:在撰写报告、论文草稿或是课程笔记时,Dillinger的简洁界面和Markdown语法能够帮助用户集中注意力于内容本身,而非复杂的排版操作。同时,云存储特性方便了资料的备份和多设备访问,无论是准备课堂讲义还是协作完成项目报告,都非常实用。

  4. 远程工作团队:对于经常需要远程协作的团队来说,Dillinger支持将文档导出为多种格式(如HTML、PDF)以及直接发布到GitHub等平台的能力,极大地促进了团队间的文件共享和版本控制。离线工作的能力也确保了在不稳定网络环境下工作的连续性。

  5. 个人日记或旅行记录:用户可以利用Dillinger的便携性和离线功能记录日常生活、旅行见闻。Markdown的简洁语法让记录变得轻松愉快,而云存储则确保这些珍贵的记忆可以安全地保存,并随时在不同设备上回顾和编辑。

二、本地环境介绍

2.1 本地环境规划

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

hostnameIP地址操作系统版本Docker版本
dokcer192.168.3.166centos 7.62 20.10.17

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.使用Docker部署Dillinger个人文本编辑器

三、本地环境检查

3.1 检查Docker服务状态

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

[root@jeven tabler]# 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 Sun 2024-05-12 08:34:14 CST; 1 weeks 2 days ago
     Docs: https://docs.docker.com
 Main PID: 11565 (dockerd)
    Tasks: 16
   Memory: 2.4G
   CGroup: /system.slice/docker.service
           └─11565 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

3.2 检查Docker版本

检查Docker版本

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

3.3 检查docker compose 版本

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

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

四、拉取Dillinger镜像

在谷歌镜像仓库拉取Dillinger镜像 ghcr.io/linuxserver/dillinger:latest

[root@jeven ~]#
[root@jeven ~]# docker pull ghcr.io/linuxserver/dillinger:latest
latest: Pulling from linuxserver/dillinger
Digest: sha256:58dc39f6cddee732241c78f89805bca608299471f66ec90a8028e10b2cadd1b4
Status: Image is up to date for ghcr.io/linuxserver/dillinger:latest
ghcr.io/linuxserver/dillinger:latest

五、部署Dillinger应用

5.1 创建部署目录

创建部署目录/data/dillinger/

mkdir -p /data/dillinger/ && cd /data/dillinger/

目录授权工作

chmod -R 777 /data/dillinger/

5.2 创建Dillinger容器

执行以下命令,快速创建Dillinger容器。

docker run -d \
  --name=dillinger \
  -e PUID=1000 \
  -e PGID=1000 \
  -e TZ=Asia/Shanghai \
  -p 8080:8080 \
  -v  /data/dillinger/config/:/config \
  --restart unless-stopped \
ghcr.io/linuxserver/dillinger:latest

在这里插入图片描述

5.3 查看Dillinger容器状态

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

[root@jeven dillinger]# docker ps
CONTAINER ID   IMAGE                                  COMMAND     CREATED          STATUS          PORTS      NAMES
2edd2099ee78   ghcr.io/linuxserver/dillinger:latest   "/init"     38 seconds ago   Up 37 seconds   0.0.0.0:8080->8080/tcp, :::8080->8080/tcp   dillinger

5.4 查看Dillinger容器日志

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

docker logs dillinger 

在这里插入图片描述

六、访问Dillinger首页

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

在这里插入图片描述

七、基本使用

7.1 新建文档

将markdown格式文档复制到左侧编辑器内,可以看到右侧预览效果。

在这里插入图片描述

7.2 导出文档

点击导出文档,可以导出markdown文件和html文件。

在这里插入图片描述

八、总结

Dillinger是一款轻盈而强大的Markdown文档编辑器,专注于提供流畅的实时预览体验和高效Markdown支持,确保编写过程无碍。其出色的性能允许用户在编辑技术文档时享受即写即看的便捷,不仅支持快速导出为Markdown或HTML文件以适配多样需求,还特别强化了离线编辑能力,便于在任意地点进行文档创建与本地保存,成为技术文档编写与临时编辑任务的理想伴侣。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1877479.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

前后端分离的后台管理系统开发模板(带你从零开发一套自己的若依框架)上

前言: 目前,前后端分离开发已经成为当前web开发的主流。目前最流行的技术选型是前端vue3后端的spring boot3,本次。就基于这两个市面上主流的框架来开发出一套基本的后台管理系统的模板,以便于我们今后的开发。 前端使用vue3ele…

YOLO网络结构特点收录

YOLO网络结构特点收录 YOLO(You Only Look Once)网络结构随着版本迭代不断进化,以下是一些关键版本的网络结构特点概述: YOLOv1 输入:将图像调整至固定尺寸,如448x448像素。骨干网络:初期版本…

Leetcode3190. 使所有元素都可以被 3 整除的最少操作数

Every day a Leetcode 题目来源:3190. 使所有元素都可以被 3 整除的最少操作数 解法1:遍历 遍历数组,累加最少操作数,即 min(num % 3, 3 - num % 3)。 代码: /** lc appleetcode.cn id3190 langcpp** [3190] 使所…

ElementUI框架搭建及组件使用

前言: 当开始使用ElementUI框架来搭建网站或Web应用程序时,了解框架的基本结构和组件的使用是至关重要的。ElementUI是一个基于Vue.js的框架,提供了丰富的UI组件和工具,可以帮助开发人员快速构建现代化的用户界面。 在本文中,我…

电脑提示vcomp140.dll丢失的几种有效的解决方法,轻松搞定dll问题

在电脑使用过程中,我们可能会遇到一些错误提示,其中之一就是找不到vcomp140.dll。那么,究竟什么是vcomp140.dll呢?为什么会出现找不到vcomp140.dll的情况呢?本文将从vcomp140.dll的定义、常见原因、对电脑的影响以及解…

[鹏城杯 2022]babybit

发现一个压缩包提取出来提取出来两个压缩包里面是注册表使用MiTeC Windows Registry Recovery 恢复注册表 flag在ROOT\ControlSet001\Control\FVEStats里的OsvEncryptInit和OsvEncryptComplete中 NSSCTF{2022/6/13_15:17:39_2022/6/13_15:23:46}

Nuxtjs3教程

起步 官方文档 官方目录结构 安装 npx nuxi@latest init <project-name>后面跟着提示走就行 最后yarn run dev 启动项目访问localhost:3000即可 路由组件 app.vue为项目根组件 <nuxt-page />为路由显示入口 将app.vue更改内容如下 <template><d…

PostgreSQL 17 Beta 1 发布!

PostgreSQL 全球开发小组宣布&#xff0c;PostgreSQL 17 的第一个测试版本现已可供下载。此版本包含 PostgreSQL 17 正式发布时将提供的所有功能的预览&#xff0c;但测试期间版本的某些细节可能会发生变化。 #PG培训#PG考试#postgresql培训#postgresql考试#postgresql认证 您…

【Qt+opencv】编译、配置opencv

文章目录 前言下载opencv编译opencvmingw版本 总结 前言 OpenCV&#xff08;Open Source Computer Vision Library&#xff09;是一个开源的计算机视觉和机器学习软件库&#xff0c;它包含了超过2500个优化的算法。这些算法可以用来检测和识别面部&#xff0c;识别对象&#x…

动手学深度学习(Pytorch版)代码实践 -计算机视觉-47转置卷积

47转置卷积 import torch from torch import nn from d2l import torch as d2l# 输入矩阵X和卷积核矩阵K实现基本的转置卷积运算 def trans_conv(X, K):h, w K.shapeY torch.zeros((X.shape[0] h - 1, X.shape[1] w - 1))for i in range(X.shape[0]):for j in range(X.shap…

Python_Socket

Python Socket socket 是通讯中的一种方式&#xff0c;主要用来处理客户端与伺服器端之串连&#xff0c;只需要protocol、IP、Port三项目即可进行网路串连。 Python套件 import socketsocket 常用函式 socket.socket([family], [type] , [proto] ) family: 串接的类型可分为…

pdf怎么转换成jpg,本地转换还是在线转换?

PDF&#xff08;Portable Document Format&#xff09;和JPG&#xff08;Joint Photographic Experts Group&#xff09;这两种文件格式在我们的日常生活和工作中扮演着举足轻重的角色。PDF因其跨平台、保持原样性强的特点&#xff0c;被广泛应用于文件传输和存储&#xff1b;而…

快速修复mfc100u.dll丢失解决方案

相连文章&#xff1a;SecureCRT的安装破解 [详细过程2024] 有小伙伴向我反馈在打开SecureFX注册机之后显示【mfc100u.dll找不到】重装之后也没有用&#xff0c;这个是因为Microsoft Visual C的运行时组件和库出现了错误&#xff0c;直接选择重新安装就可以 出现这种情况的原因…

识图生成代码:通义千问vsGPt4o,有点小崩

今日对比一下通义千问和GPt4o&#xff0c;在通过识别图片然后去生成前端代码 在当今ai的时代&#xff0c;通过ai去生成页面的代码可以很大的提高我们的开发效率下面是我们要求的生成的图片截图&#xff0c;这是掘金的榜单 效果对比 首先我们使用通义千问&#xff0c;让他去帮我…

LabVIEW在机器人研究所中的应用

机器人研究所致力于机器人技术的研究与开发&#xff0c;涵盖工业机器人、服务机器人、医疗机器人等多个领域。研究所需要一个高效、灵活的实验控制和数据采集系统&#xff0c;以进行复杂的机器人实验&#xff0c;并对实验数据进行实时处理和分析。 项目需求 实时控制与监控&am…

Linux中使用网络文件系统NFS挂载远程目录,对远程文件的本地化操作

目录 一、NFS及其在linux系统中的挂载 1、NFS概述 2、NFS挂载及其作用 &#xff08;1&#xff09;资源共享 &#xff08;2&#xff09;简化数据管理 &#xff08;3&#xff09;提高数据可用性 &#xff08;4&#xff09;灵活性 &#xff08;5&#xff09;访问控制 &am…

ctfshow-web入门-命令执行(web56、web57、web58)

目录 1、web56 2、web57 3、web58 1、web56 命令执行&#xff0c;需要严格的过滤 新增过滤数字&#xff0c;只能采用上一题临时文件上传的方法&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><…

C语言学习记录(十二)——指针与数组及字符串

文章目录 前言一、指针和数组二、指针和二维数组**行指针(数组指针)** 三、 字符指针和字符串四、指针数组 前言 一个学习嵌入式的小白~ 有问题评论区或私信指出~ 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 一、指针和数组 在C语言中 &#xff0…

RHCE四---web服务器的高级优化方案

一、Web服务器&#xff08;2&#xff09; 基于https协议的静态网站 概念解释 HTTPS&#xff08;全称&#xff1a;Hyper Text Transfer Protocol over Secure Socket Layer 或 Hypertext TransferProtocol Secure&#xff0c;超文本传输安全协议&#xff09;&#xff0c;是以…

​Chrome插件:Postman Interceptor 调试的终极利器

今天给大家介绍一款非常实用的工具——Postman Interceptor。 这个工具可以捕捉任何网站的请求&#xff0c;并将其发送到Postman客户端。 对于经常和API打交道的程序员来说&#xff0c;Postman Interceptor真的是神器级别的存在。 下面就让我详细说说这个插件怎么用&#xf…