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

基于华为openEuler部署Dillinger个人文本编辑器

基于华为openEuler部署Dillinger个人文本编辑器

  • 前言
  • 一、相关服务介绍
    • 1.1 openEuler系统介绍
    • 1.2 Dillinger介绍
  • 二、本次实践介绍
    • 2.1 本次实践介绍
    • 2.2 本次环境规划
  • 三、本地环境检查
    • 3.1 检查Docker服务状态
    • 3.2 检查Docker版本
    • 3.3 检查docker compose 版本
  • 四、拉取Dillinger镜像
  • 五、部署Dillinger服务
    • 6.1 创建挂载目录
    • 6.2 编辑docker-compose.yaml文件
    • 6.4 创建Dillinger容器
    • 6.5 检查Dillinger容器状态
    • 6.6 检查Dillinger容器日志
    • 6.7 安全设置
  • 七、访问Dillinger服务
  • 八、Dillinger的基本使用
    • 8.1 编辑文档
    • 8.2 导出文档
  • 九、总结

前言


在现代办公和个人项目管理中,一个强大且灵活的文本编辑器是必不可少的。基于华为openEuler系统部署Dillinger个人文本编辑器,不仅能够利用其稳定性和安全性,还能享受到Dillinger提供的云端与离线编辑双重便利。此次实践将介绍如何在openEuler上快速搭建并使用Dillinger,为用户提供高效、便捷的文档处理体验。


一、相关服务介绍

1.1 openEuler系统介绍

  • 简介

openEuler是华为发起并主导的一个开源操作系统项目,它基于Linux内核开发,致力于为企业级应用提供安全、稳定、可靠的操作环境。自2019年正式开源以来,openEuler迅速吸引了全球众多开发者和技术爱好者的关注,并逐渐形成了一个活跃的开源社区。该系统不仅支持多种处理器架构(如x86、ARM等),而且通过持续的技术创新,在性能优化、安全性增强以及容器化支持等方面展现了显著的优势。

  • 主要特点
  • 开源性:openEuler遵循开源协议,允许任何个人或组织自由获取、使用、修改及分发系统代码,这极大地促进了技术创新与共享。
  • 高性能与稳定性:通过对Linux内核进行深度优化,openEuler能够提供出色的运行效率和稳定性,满足企业级应用场景的需求。
  • 安全性:提供了包括安全启动、数据加密在内的多重安全保障措施,确保用户数据的安全性。
  • 容器化支持:兼容Docker和Kubernetes等容器技术,便于开发者构建、部署和管理容器化应用。
  • 丰富的生态系统:拥有庞大的开发者社区和丰富的软件库,为用户提供广泛的软件支持和服务。

1.2 Dillinger介绍

  • Dillinger简介

Dillinger 是一个基于云的现代化Markdown编辑器,它不仅支持在线使用,还提供了离线存储的功能,使得用户能够在没有网络连接的情况下继续编辑文档。该编辑器采用了AngularJS框架构建,确保了其高效性和良好的用户体验,并以HTML5技术为基础,使其能够跨平台运行于多种设备和浏览器上。

  • 主要特点
  • 云基础与离线功能:Dillinger让用户可以轻松地在云端保存和管理Markdown文档,同时支持离线编辑功能。这意味着无论是否联网,用户都可以随时随地访问和编辑自己的文件。
  • AngularJS驱动:采用流行的AngularJS框架开发,Dillinger提供了一个动态且响应迅速的用户界面,增强了用户的交互体验。
  • 跨平台兼容性:由于基于HTML5技术构建,Dillinger可以在各种操作系统(如Windows、macOS、Linux)以及不同类型的设备(包括桌面电脑、平板和智能手机)上流畅运行。
  • 便捷的社交集成:Dillinger允许用户直接从GitHub、Dropbox等服务导入或导出Markdown文件,极大地方便了文件的管理和共享。
  • 实时预览:提供即时的Markdown渲染视图,使用户可以一边编写内容,一边查看格式化后的效果,无需切换页面或刷新浏览器。
  • 简洁易用:Dillinger的设计注重用户体验,具有直观的操作界面和简单的工具栏布局,即使是Markdown新手也能快速上手并有效利用其全部功能。

二、本次实践介绍

2.1 本次实践介绍

1.本次实践环境为个人测试环境,生产环境请谨慎;
2.本次实践主要是在openEuler系统下部署Dillinger个人文本编辑器。

2.2 本次环境规划

本次环境规划如下所示:

服务器HostNameIP地址操作系统内核版本部署项目
VM虚拟机openEuler192.168.3.83openEuler 24.03 (LTS)6.6.0-28.0.0.34.oe2403.x86_64Dillinger个人文本编辑器

三、本地环境检查

3.1 检查Docker服务状态

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

[root@openEuler ~]# systemctl status docker
● docker.service - Docker Application Container EngineLoaded: loaded (/usr/lib/systemd/system/docker.service; enabled; preset: disabled)Active: active (running) since Sat 2025-03-29 20:58:28 CST; 1 day 20h ago
TriggeredBy: ● docker.socketDocs: https://docs.docker.comMain PID: 1382 (dockerd)Tasks: 10Memory: 115.9M ()CGroup: /system.slice/docker.service└─1382 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

3.2 检查Docker版本

检查Docker版本,当前安装版本为 26.1.3

[root@openEuler ~]# docker -v
Docker version 26.1.3, build b72abbb

3.3 检查docker compose 版本

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

[root@openEuler ~]# docker compose version
Docker Compose version v2.27.0

四、拉取Dillinger镜像

执行以下命令,拉取Dillinger容器镜像。

[root@openEuler ~]# docker pull ghcr.io/linuxserver/dillinger:latest
latest: Pulling from linuxserver/dillinger
607a85b4b134: Pull complete
2298c655b51e: Pull complete
49b7d5104327: Pull complete
b36824760783: Pull complete
f1d370f8140e: Pull complete
7dab169e53d5: Pull complete
1f27aa7edc36: Pull complete
Digest: sha256:58dc39f6cddee732241c78f89805bca608299471f66ec90a8028e10b2cadd1b4
Status: Downloaded newer image for ghcr.io/linuxserver/dillinger:latest
ghcr.io/linuxserver/dillinger:latest

五、部署Dillinger服务

6.1 创建挂载目录

执行以下命令,创建Dillinger挂载目录/data/dillinger/。

mkdir -p /data/dillinger/config/ && cd /data/dillinger/
  • 目录授权
chmod -R 777 /data/dillinger

6.2 编辑docker-compose.yaml文件

如果想要使用docker-cli创建Dillinger容器,可参考以下命令:

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

本次实践部署使用docker compose方式,编辑docker-compose.yaml文件。部署文件中的宿主机映射端口可自定义修改,注意防止宿主机端口冲突。

vim docker-compose.yaml

version: '3.9'
services:linuxserver:image: 'ghcr.io/linuxserver/dillinger:latest'restart: unless-stoppedvolumes:- '/data/dillinger/config/:/config'ports:- '8120:8080'environment:- TZ=Asia/Shanghai- PGID=0- PUID=0container_name: dillinger

6.4 创建Dillinger容器

执行以下命令,使用docker-compose.yaml文件创建Dillinger容器。

[root@openEuler dillinger]# docker compose up -d
WARN[0000] /data/dillinger/docker-compose.yaml: `version` is obsolete
[+] Running 2/2✔ Network dillinger_default  Created                                                                                                             0.1s✔ Container dillinger        Started                                                                                                             1.0s

在这里插入图片描述

6.5 检查Dillinger容器状态

检查Dillinger文件容器状态,确保Dillinger容器正常运行。

[root@openEuler dillinger]#  docker compose ps
WARN[0000] /data/dillinger/docker-compose.yaml: `version` is obsolete
NAME        IMAGE                                  COMMAND   SERVICE       CREATED          STATUS          PORTS
dillinger   ghcr.io/linuxserver/dillinger:latest   "/init"   linuxserver   52 seconds ago   Up 51 seconds   0.0.0.0:8120->8080/tcp, :::8120->8080/tcp

6.6 检查Dillinger容器日志

检查Dillinger文件容器日志,确保Dillinger服务正常启动。

docker compose logs 

在这里插入图片描述

6.7 安全设置

  • 关闭selinux
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
  • 停止本地防火墙
systemctl stop firewalld
systemctl disable firewalld

七、访问Dillinger服务

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

在这里插入图片描述

八、Dillinger的基本使用

8.1 编辑文档

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

在这里插入图片描述

8.2 导出文档

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

在这里插入图片描述

九、总结

通过本次实践,我们成功地在华为openEuler系统上部署了Dillinger个人文本编辑器,体验到了它强大的Markdown编辑功能和便捷的云服务集成。这不仅提升了我们对openEuler操作系统特性的理解,也展示了如何利用开源技术构建高效的工作环境。未来,我们可以进一步探索Dillinger和其他工具的结合应用,以满足更多样化的文档管理需求。

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

相关文章:

  • wordpress 标签固定链接宁波seo网络推广外包报价
  • 网站建设数据库是什么百度一下京东
  • 【Leetcode hot 100】131.分割回文串
  • ARM - GCC - 建立自己的命令行编译环境
  • Nginx限流配置
  • 大岭山做网站九亭做网站公司
  • 微软宣布 Windows 11 v25H2 GA
  • Burp Suite模拟器抓包全攻略
  • 佛山营销型网站定制绿色企业网站源码
  • Qt 5.14.2+Mysql5.7 64位开发环境下无法连接数据库
  • 【Python】
  • [特殊字符]ui设计公司灵感备忘录 | 网格布局 UI 收集
  • Base UI:一款极简主义的「无样式」组件库
  • MySQL 运维知识点(十六)---- 读写分离
  • 网站建设生存期模型希音电商网站
  • 济南网站建设培训班永久免费网站建设
  • 高层次综合报告分析-vivado hls第四章
  • Go语言中的Zap日志库
  • Linux网络编程——UdpServer
  • Daily算法刷题【面试经典150题-3️⃣】
  • MybatisPlus和pagehelper分页冲突—关于jsqlparser、pagehelper、MybatisPlus三者的版本兼容问题
  • R 数组:深入解析与高效使用
  • 缩点学习笔记
  • Go基础:用Go语言操作MongoDB详解
  • 第六章:适配器模式 - 接口转换的艺术大师
  • ARM环境日志系统的简单设计思路
  • 网站名称推荐大气聚财的公司名字
  • 【JVM】——实战篇
  • 那里有正规网站开发培训学校个人网站是怎么样的
  • 高端网站设计简介推荐外贸网站建设的公司