【打工日常】使用Docker部署zyplayer_doc团队协作文档

一、zyplayer-doc介绍

1.zyplayer-doc是一款适合企业和个人使用的WIKI知识库管理工具,提供在线化的知识库管理功能,专为私有化部署而设计,最大程度上保证企业或个人的数据安全,公司小团队的话完全可以局域网部署一个。

2.它也可以将其作为企业产品的说明文档来使用,支持一键将整个空间的内容开放到互联网,并提供有不同风格的开放文档页样式可供选择,省去为了产品的说明文档而去定制开发一个系统的成本。

3.管理控制台做到了用户的统一登录控制、文档导航、以及用户管理,其中统一登录支持三方的SSO登录系统接入,用户管理可对系统所有用户进行增删改查操作。

4.知识库支持按空间隔离,每个空间内文档相互独立,互不影响,每个空间可单独设置LOGO和封面,设置空间开放状态及空间成员权限,知识库页面可对所有的文档标题及内容进行搜索,空间可无限创建,无数量限制。空间内可创建页面,支持HTML富文本编辑器和Markdown编辑

二、本次实践介绍

本次实践简介

本次实践部署环境为个人测试环境

本地环境规划

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

镜像命名IP地址容器镜像版本操作系统版本
zyplayer-doc192.168.2.76latestubuntu 22.04

三、检查本地Docker环境

检查本地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#

检查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)

四、部署zyplayer-doc镜像

下载zyplayer-doc镜像

docker pull zyplayer/zyplayer-doc:latest 
  
root@HEJIAJIN-FX506HE:/docker_software# docker pull zyplayer/zyplayer-doc:latest
Using default tag: latest
latest: Pulling from zyplayer/zyplayer-doc
7d63c13d9b9b: Pull complete 
6ad2a11ca37b: Pull complete 
8076cdef4689: Pull complete 
0ba90f5a7dd0: Pull complete 
27c191df269f: Pull complete 
e332e26a6509: Pull complete 
b6aa2cfacc25: Pull complete 
Digest: sha256:0d1c173c7bc5ef6b51a815a995f06dd89b4902e4773be98687259134cf6ea267
Status: Downloaded newer image for zyplayer/zyplayer-doc:latest
docker.io/zyplayer/zyplayer-doc:latest

创建容器

使用docker快速创建zyplayer-doc的容器。

完整创建过程:
1.先需要有对应对应的mysql,库名是zyplayer_doc

如果还没有mysql的,可以快速创建一个,如下:

A.docker pull mysql:latest

B.mkdir -p /docker-compose/mysql/conf /opt/module/mysql/data

C.vim /docker-compose/mysql/conf/my.cnf
编辑的时候输入如下:
[client]
default-character-set = utf8
[mysqld]
bind-address=0.0.0.0
datadir = /docker-compose/mysql/data
character_set_server = utf8
collation_server = utf8_bin
secure-file-priv= NULL
symbolic-links=0
!includedir /etc/mysql/conf.d/

D.保存,启动mysql
docker run --restart=unless-stopped -d --name mysql -v /docker-compose/mysql/conf/my.cnf:/etc/mysql/my.cnf -v /docker-compose/mysql/data:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:latest

注:以上挂载的路径需要自己设定,如/docker-compose/mysql/conf

E.docker exec -it mysql /bin/bash

F.mysql -uroot -p
123456

G.create database zyplayer_doc;

2.使用docker-cli启动一个zyplayer-doc的容器。
  
docker run -d -p 8989:8083 --name zyplayer-doc -e DATASOURCE_HOST_PORT=192.168.2.76:3306 -e DATASOURCE_USER=root -e DATASOURCE_PASSWORD=123456 zyplayer/zyplayer-doc:latest

3.使用docker-compose启动一个zyplayer-doc的容器  
  
version: '3.9'
services:
    mysql:
        image: 'mysql:latest'
        environment:
            - MYSQL_ROOT_PASSWORD=123456
        ports:
            - '3306:3306'
        volumes:
            - '/docker-compose/mysql/data:/var/lib/mysql'
            - '/docker-compose/mysql/conf/my.cnf:/etc/mysql/my.cnf'
        container_name: mysql
        restart: unless-stopped
        
    zyplayer-doc:
        image: 'zyplayer/zyplayer-doc:latest'
        environment:
            - DATASOURCE_PASSWORD=123456
            - DATASOURCE_USER=root
            - 'DATASOURCE_HOST_PORT=192.168.2.76:3306'
        container_name: zyplayer-doc
        depends_on: 
	        - mysql
        ports:
            - '8989:8083'

检查容器运行状态

检查容器的运行状态,确保服务的正常运行。
docker ps

NAME         IMAGE                    COMMAND                   SERVICE      CREATED         STATUS         PORTS
3470b66ac5ee   zyplayer/zyplayer-doc:latest                                       "java -Djava.securit…"   3 seconds ago       Up 2 seconds              0.0.0.0:8989->8083/tcp, :::8989->8083/tcp              zyplayer-doc

查看容器运行日志
docker logs -f zyplayer-doc

root@HEJIAJIN-FX506HE:/docker-compose/mysql/conf# docker logs -f zyplayer-doc
[2024-03-17 15:36:50][INFO ][Application] Starting Application using Java 11.0.16 on 3470b66ac5ee with PID 1 (/zyplayer-doc.jar started by root in /)
[2024-03-17 15:36:50][INFO ][Application] No active profile set, falling back to 1 default profile: "default"
[2024-03-17 15:36:50][INFO ][RepositoryConfigurationDelegate] Bootstrapping Spring Data LDAP repositories in DEFAULT mode.
[2024-03-17 15:36:50][INFO ][RepositoryConfigurationDelegate] Finished Spring Data repository scanning in 10 ms. Found 0 LDAP repository interfaces.
[2024-03-17 15:36:50][INFO ][a] 缓存策略:内存缓存
[2024-03-17 15:36:51][INFO ][TomcatWebServer] Tomcat initialized with port(s): 8083 (http)
[2024-03-17 15:36:51][INFO ][Http11NioProtocol] Initializing ProtocolHandler ["http-nio-8083"]
[2024-03-17 15:36:51][INFO ][StandardService] Starting service [Tomcat]
[2024-03-17 15:36:51][INFO ][StandardEngine] Starting Servlet engine: [Apache Tomcat/9.0.82]
[2024-03-17 15:36:51][INFO ][[/]] Initializing Spring embedded WebApplicationContext
[2024-03-17 15:36:51][INFO ][ServletWebServerApplicationContext] Root WebApplicationContext: initialization completed in 1043 ms
[2024-03-17 15:36:51][INFO ][DruidDataSource] {dataSource-1,zyplayer-doc-1} inited
[2024-03-17 15:36:52][INFO ][a] 开始检查当前数据库DDL版本
[2024-03-17 15:36:52][INFO ][a] 当前数据库DDL已是最新版本:2.3.3
[2024-03-17 15:36:53][INFO ][WelcomePageHandlerMapping] Adding welcome page: class path resource [META-INF/resources/index.html]
[2024-03-17 15:36:53][INFO ][Http11NioProtocol] Starting ProtocolHandler ["http-nio-8083"]
[2024-03-17 15:36:53][INFO ][TomcatWebServer] Tomcat started on port(s): 8083 (http) with context path ''
[2024-03-17 15:36:53][INFO ][Application] Started Application in 3.492 seconds (JVM running for 3.903)
[2024-03-17 15:36:53][INFO ][Application] 
-------------------------------------------------------------
    zyplayer-doc Launch completed, Current version: 2.3.3
    Access address: http://172.17.0.3:8083/
-------------------------------------------------------------

五、访问zyplayer-doc

访问地址:http://localhost:898 账号zyplayer 密码123456

任意使用!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

PyQt6实战2

cron表达式解析器和生成器 基本功能: 1.输入cron表达式,显示接下来的几条即将执行的时间 (测试下来只有5位是生效的) 2.选择规则生成cron 运行CronRunner即可: 运行效果展示 from PyQt6.QtWidgets import * import sys from cron import C…

RuoYi-Vue开源项目2-前端登录验证码生成过程分析

前端登录验证码实现过程 生成过程分析 生成过程分析 验证码的生成过程简单概括为:前端登录页面加载时,向后端发送一个请求,返回验证码图片给前端页面展示 前端页面加载触发代码: import { getCodeImg } from "/api/login&q…

在pharmit里匹配药效团

我把400个无活性的小分子(decoys)提交到pharmit里。 命名为decoyset00~decoyset08,查找时,按这个找。 1、导入药效团配体: 进入药效团筛选界面: 导入代表药效团模型的活性肽构象: 2、选择预先…

Unity判断某个材质是否拥有某张贴图

在Unity中,一个材质是唯一的,也就是实例,当我们打开Debug面板时,就可以看清楚材质的具体信息。 其中SvaedProperties就是材质保存的属性,当然贴图也是属性,也就是TexEnvs下的属性 当然,要判断某…

Docker进阶教程 - 2 Docker部署SpringBoot项目

更好的阅读体验:点这里 ( www.doubibiji.com ) 2 Docker部署SpringBoot项目 已经学习了 Dockerfile 了,下面介绍一下如何将 SpringBoot 项目通过 Dockerfile 来部署到 Docker 中。 1 修改项目配置 首先需要准备一个 SpringBo…

【Spring 篇】SpringMVC的请求:舞台上的开端

在Web开发的舞台上,请求就如同一场充满激情的开端,而SpringMVC是这场表演的舞台主持人,它能够优雅地接收和处理各种请求,引领我们进入一个美妙的编码之旅。在本篇博客中,我们将深入探讨SpringMVC的请求处理机制&#x…

oracle 19c打补丁到19.14

oracle 19c打补丁到19.14 oracle 19.3打补丁到19.14 查看oracle的版本: SQL> column product format A30 SQL> column version format A15 SQL> column version_full format A20 SQL> column status format A15 SQL> select * from product_compo…

鸿蒙开发之MPChart图表开发

一、简介 随着移动应用的不断发展,数据可视化成为提高用户体验和数据交流的重要手段之一,因此需要经常使用图表,如折线图、柱形图等。OpenHarmony提供了一个强大而灵活的图表库是实现这一目标的关键。 在 ohpm 中心仓(https://ohpm.openharmony.cn/)中,汇聚了众多开发者…

3月报价:腾讯云服务器2024年优惠价格表,5元1个月

腾讯云服务器今日价格:轻量应用服务器2核2G3M价格61元一年、2核2G4M价格99元一年,540元三年、2核4G5M带宽165元一年,2核4G5M带宽756元三年、轻量4核8G12M服务器646元15个月;云服务器CVM S5实例2核2G配置280.8元一年、2核4G、4核8G…

常用芯片学习——DS3231M芯片

DS3231M RTC实时时钟 芯片介绍 DS3231M是一款低成本、极其精确的 I2C 实时时钟 (RTC)。该设备集成了电池输入,并在设备主电源中断时保持准确的计时。微型电子机械系统 (MEMS) 谐振器的集成提高了器件的长期精度&…

CesiumJS 沙盒

CesiumJS 沙盒 通过CesiumJS 沙盒快速测试CesiumJS的一些功能,免去安装开发环境的困恼。 Hello World https://sandcastle.cesium.com/index.html 简单修改(F8运行):去掉界面上UI const viewer new Cesium.Viewer("cesi…

HBase在表操作--显示中文

启动HBase后,Master和RegionServer两个服务器,分别对应进程为HMaster和HRegionServe。(可通过jps查看) 1.进入表操作 hbase shell 2.查看当前库中存在的表 list 3.查看表中数据(注:学习期间可用&#…

ve-list 列表

ve-list 列表 功能描述 最基础的列表展示&#xff0c;可承载文字、列表、图片、段落&#xff0c;常用于后台数据展示页面。 Api 效果图 <ve-list v-for"(item, index) in _list" :key"index" :data"item" type"list3"><t…

谷歌(edge)浏览器过滤,只查看后端发送的请求

打开F12 调试工具 选择Network 这是我们会发现 什么图片 文件 接口的请求很多很多&#xff0c;我们只需要查看我们后端发送的请求是否成功就好了 正常情况我们需要的都是只看接口 先点击这里这个 过滤 我们只需要点击 Fetch/XHR 即可过滤掉其他请求信息的展示 这样烦恼的问题就…

HDFS EXERCISES

bash: hdfs: command not found...这可能是因为hdfs命令不在系统环境变量中 whereis hadoop 找到hadoop的位置 一旦找到Hadoop安装目录&#xff0c;您需要将其 bin 目录添加到PATH环境变量中。 vi ~/.bashrc .bashrc 是一个在Linux和Unix系统中用于Bash shell的配置文件。当…

Python图像处理指南:PIL与OpenCV的比较【第136篇—PIL】

&#x1f47d;发现宝藏 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 Python图像处理指南&#xff1a;PIL与OpenCV的比较 图像处理在计算机视觉和图像识别等领域…

[氮化镓]GaN中质子反冲离子的LET和射程特性

这篇文件是一篇关于氮化镓&#xff08;GaN&#xff09;中质子反冲离子的线性能量转移&#xff08;LET&#xff09;和射程特性的研究论文&#xff0c;发表在《IEEE Transactions on Nuclear Science》2021年5月的期刊上。论文的主要内容包括&#xff1a; 研究背景&#xff1a;氮…

Python的网络爬虫介绍与实战

Python的网络爬虫基础介绍与实战 定义流程包和函数静动态网页爬虫实战红牛分公司&#xff1f;二手房数据&#xff08;静态网页&#xff09;豆瓣读书&#xff08;动态网页&#xff09; 定义 网络爬虫是按照一定的规则&#xff0c;自动地抓取万维网&#xff08;www&#xff09;信…

Java代码审计安全篇-XXE(XML外部实体注入)漏洞

前言&#xff1a; 堕落了三个月&#xff0c;现在因为被找实习而困扰&#xff0c;着实自己能力不足&#xff0c;从今天开始 每天沉淀一点点 &#xff0c;准备秋招 加油 注意&#xff1a; 本文章参考qax的网络安全java代码审计&#xff0c;记录自己的学习过程&#xff0c;还希望各…

sql join

-- 创建事实表 CREATE TABLE product_facts (id INT AUTO_INCREMENT PRIMARY KEY,product_name VARCHAR(255),price DECIMAL(10, 2) );-- 插入数据 INSERT INTO product_facts (product_name, price) VALUES (Product A, 100.00); INSERT INTO product_facts (product_name, pr…