Docker方式安装showdoc

Docker方式安装showdoc

基础安装

安装前请确保你的环境已经装好了docker服务 。docker的安装教程在网上比较多,可以搜索了解下。这里重点介绍showdoc

# 原版官方镜像安装命令(中国大陆用户不建议直接使用原版镜像,可以用后面的加速镜像)
docker pull star7th/showdoc 

# 中国大陆镜像安装命令(安装后记得执行docker tag命令以进行重命名)
docker pull registry.cn-shenzhen.aliyuncs.com/star7th/showdoc
docker tag registry.cn-shenzhen.aliyuncs.com/star7th/showdoc:latest star7th/showdoc:latest 

##后续命令无论使用官方镜像还是加速镜像都需要执行

#新建存放showdoc数据的目录
mkdir -p /showdoc_data/html
chmod  -R 777 /showdoc_data

#启动showdoc容器
docker run -d --name showdoc --user=root --privileged=true -p 4999:80 \
-v /showdoc_data/html:/var/www/html/ star7th/showdoc

根据以上命令操作的话,往后showdoc的数据都会存放在 /showdoc_data/html 目录下。
你可以打开 http://localhost:4999 来访问showdoc (localhost可改为你的服务器域名或者IP)。账户密码是showdoc/123456,登录后你便可以看到右上方的管理后台入口。建议登录后修改密码。
对showdoc的问题或建议请至https://github.com/star7th/showdoc 出提issue。若觉得showdoc好用,不妨点个star。

如何升级

这里的升级是针对上面docker安装方式的升级。如果你原来是采用非docker安装方式(如php安装方式)的话,请跳过本部分文字,直接去看下部分。

#停止容器
docker stop showdoc 

#下载最新代码包
wget https://github.com/star7th/showdoc/archive/master.tar.gz
#解压
tar -zxvf master.tar.gz -C /showdoc_data/

rm -rf  /showdoc_data/html_bak
#备份。如果可以的话,命令中的html_bak还可以加上日期后缀,以便保留不同日期的多个备份
mv /showdoc_data/html  /showdoc_data/html_bak
mv /showdoc_data/showdoc-master /showdoc_data/html  ##// */

#赋予权限
chmod -R 777  /showdoc_data/html

#启动容器
docker start showdoc

#执行安装。默认安装中文版。如果想安装英文版,将下面参数中的zh改为en
curl http://localhost:4999/install/non_interactive.php?lang=zh

#转移旧数据库
\cp  -f  /showdoc_data/html_bak/Sqlite/showdoc.db.php /showdoc_data/html/Sqlite/showdoc.db.php

#转移旧附件数据
\cp -r -f /showdoc_data/html_bak/Public/Uploads/. /showdoc_data/html/Public/Uploads


#如果中途出错,请重命名原来的/showdoc_data/html_bak文件为/showdoc_data/html ,然后重启容器便可恢复。

非docker安装方式如何升级到docker安装方式

先参考前文,用docker方式全新安装一个showdoc,并且做好数据持久化。
接下来,假设你原来安装的旧showdoc已上传到服务器的 /tmp/showdoc 目录,那么

#转移旧数据库
\cp -r -f /tmp/showdoc/Sqlite/showdoc.db.php /showdoc_data/html/Sqlite/showdoc.db.php

#转移旧附件数据
\cp -r -f /tmp/showdoc/Public/Uploads/. /showdoc_data/html/Public/Uploads

数据备份

备份/showdoc_data/html 目录即可。比如执行下面命令压缩存放

zip -r /showdoc_data/showdoc_bak.zip  /showdoc_data/html 
# 其中showdoc_bak.zip可以用日期后缀命名,以便多个备份。你也可以用定时任务来实现定时备份。

其他参考命令

 docker stop showdoc # 停止容器
 docker restart showdoc #重启showdoc容器
 docker rm showdoc #删除showdoc容器
 docker rmi star7th/showdoc #删除showdoc镜像
 docker stop $(docker ps -a -q) ;docker rm $(docker ps -a -q) ; #停止并删除所有容器。危险命令,不懂勿用。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/101766.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • docker镜像操作_docker 运行镜像

    docker镜像操作_docker 运行镜像前言Docker的三大核心概念:镜像、容器、仓库。初学者对镜像和容器往往分不清楚,学过面向对象的应该知道类和实例,这跟面向对象里面的概念很相似我们可以把镜像看作类,把容器看作类实例化后的对象。|

    2022年7月28日
    4
  • docker 导入导出镜像_docker拉取镜像到本地

    docker 导入导出镜像_docker拉取镜像到本地docker导入导出镜像文件:把某个docker镜像保存到本地文件,命令如下dockersave-o镜像名.tar原始镜像名(REPOSITORY项)导出$dockersave-o/root/images/jenkins_image.tarjenkins/jenkins:latest导入$dockerload</root/images/jenkins_image.tar导出镜像如果要存出镜像到本地文件,可以使用dockersave命令。例如,存出本地的ubu

    2025年9月17日
    7
  • 肝了一晚帮她搭建完个人网站——利用Docker在单节点上实现内外网隔离网站部署(Nginx、WordPress、MySQL)

    肝了一晚帮她搭建完个人网站——利用Docker在单节点上实现内外网隔离网站部署(Nginx、Wordpress、MySQL)目录1、前言2、注册3、重置服务器实例密码4、配置安全规则5、登录服务器6、更新系统7、安装Docker8、创建Docker子网络9、创建子网内的MySQL实例10、创建子网内的WordPress实例11、创建Nginx反向代理实例12、查看状态13、配置WordPress14、发布站点15、访问站点16、Docker命令行日常更新18、总结1、前言  同事小姐姐琦琦毕业后就应聘来到我们公司做项目助理,跟我分在一个项目组。琦琦自身先天条件就很好,长得耐看,身高1.65,偏瘦,整体算中等偏上的水平吧。她平

    2022年5月15日
    66
  • Jenkins(4)docker容器内部修改jenkins容器时间「建议收藏」

    Jenkins(4)docker容器内部修改jenkins容器时间「建议收藏」前言用docker搭建的Jenkins环境时间显示和我们本地时间相差8个小时,需修改容器内部的系统时间查看时间查看系统时间date-R进入docker容器内部,查看容器时间dockere

    2022年7月29日
    12
  • docker(11)Dockerfile 中的COPY与ADD 命令「建议收藏」

    docker(11)Dockerfile 中的COPY与ADD 命令「建议收藏」前言Dockerfile中提供了两个非常相似的命令COPY和ADD,本文尝试解释这两个命令的基本功能,以及其异同点,然后总结其各自适合的应用场景。Build上下文的概念在使用dock

    2022年7月29日
    7
  • 群晖docker mysql_Watchtower – 群晖自动更新 Docker 映像与容器

    群晖docker mysql_Watchtower – 群晖自动更新 Docker 映像与容器群晖的Docker功能非常丰富,不过也有不完美的地方,映像和容器更新比较麻烦,比如我的Docker容器运行了十几个,如果通过手动更新非常繁琐,容器还需要重新配置本文就介绍如何通过watchtower全自动更新Docker映像,并保留原始配置重新运行容器。watchtower是一个可以监控正在运行的容器镜像是否有更新的工具,当本地镜像与远端镜像有差异的时候,可以自动使用当前容器的运行参数以新镜像重…

    2025年6月13日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号