在Docker中部署ShowDoc

一、安装Docker

1、安装Docker

yum install docker

最后出现Complete即可

2、启动服务

# service docker start

3、设置为开机启动

# chkconfig docker on

windows环境官网下载地址

二、安装git

# yum install git

最后出现Complete即可

三、安装ShowDoc项目

首先下载docker文件项目,然后build建立静态镜像文件(类似于Vmware的快照),最后根据此静态文件新建容器并运行。

1、clone项目

从github上clone代码到本地某个目录(你想放到哪里,就先进入到哪个目录)

# git clone -o gitbug https://github.com/star7th/showdoc

2、进入到showdoc目录,建立镜像并运行镜像

# cd showdoc/

# docker build -t showdoc ./             根据docker文件建立镜像,镜像名为showdoc,过程有点漫长耐心等待,结束永docker images查看镜像

# docker run -d --name showdoc -p 4999:80 showdoc      新建容器命名为showdoc,并运行showdoc镜像在(创建容器后用 docker start/stop container_id/container_name启动和关闭),映射本机的4999端口到虚拟机的80端口,如果想在不同端口启动,请修改4999为其它端口

3、访问ShowDoc

在浏览器输入网址   http://192.168.132.132:4999/install/      注意将IP地址替换成你服务器的IP地址

选择语言,点击OK按钮

点击进入网站首页即可。

四、备份

像API接口文档这种重要的文档,一定要定期备份。

/XXX/showdoc/Sqlite 下面有个showdoc.db.php文件,请定期备份。

这里的备份要进入到container容器中进行拷贝。

使用docker ps查看到该容器信息,接下来就使用docker attach进入该容器

$ docker ps   #查看正在运行的镜像 -a可以查看全部镜像(创建未启用),类似于docker container ls -a
$ sudo docker exec -it idorname /bin/bash #根据容器id或者容器名称进入到该容器,查看要复制文件的路径,输入exit即可退出容器
$ docker cp contName:/var/www/html/Sqlite/showdoc.db.php /root/ #docker cp 容器名:/容器文件路径 /本机文件路径

将复制出来的数据文件替换掉docker项目文件中,重新建立镜像和容器即可。

其他docker常用命令

启动/关闭容器

docker start/stop container_id/name

删除容器

docker container rm container_id/name

查看镜像

docker images

删除镜像

docker rmi img_id/name

将正在运行的容器备份为镜像

方法一:先根据容器备份镜像,然后再导出镜像为tar包。迁移后加载镜像tar即可

docker container ls     #查看正在运行的镜像
docker commit -p 2d49b09911fe showdoc-container-backup #根据container新建一个镜像
docker save -o ~/showdoc-cb.tar showdoc-container-backup #将镜像备份到本地文件
docker load -i ~/showdoc-cb.tar #根据备份的tar恢复镜像

方法二:直接根据容器导出tar,然后迁移后导入,恢复为镜像。

docker export -o ~/showdocback.tar showdoc   #根据容器导出tar压缩包
docker import ~/showdocback.tar showdoc-back:v1 #将tar压缩包直接导入到docker中,成为镜像

---------------------
参考:https://blog.csdn.net/duzilonglove/article/details/78980856

CentOS6.5利用Docker部署ShowDoc的更多相关文章

  1. CentOS下利用Docker部署Surging

    原文:CentOS下利用Docker部署Surging 1. 安装Centos, 配置固定ip配置文件地址vi /etc/sysconfig/network-scripts/ifcfg-ens33`` ...

  2. 云服务器上利用Docker部署Django项目

    转载别人的,请看下面链接 云服务器上利用Docker部署Django项目

  3. 利用docker部署elk交换机日志分析

    今天我们来聊一下利用docker部署elk日志分析系统,这里解析一下elk是啥东西.elk分别是Elasticsearch,Logstash和Kibana的首字母缩写. Elasticsearch是一 ...

  4. Docker -- 2 -- 利用docker部署网站和数据库

    在Docker – 系统整洁之道 – 1中已经对Docker的一些命令和Docker镜像的使用及操作做了记录. 这次就利用docker进行一次真正的实例使用,使用docker搭建一个简单的答题系统,这 ...

  5. Docker在手,天下我有,在Win10系统下利用Docker部署Gunicorn+Flask打造独立镜像

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_164 书接上回,之前一篇:Win10环境下使用Flask配合Celery异步推送实时/定时消息(Socket.io)/2020年最 ...

  6. 利用docker部署redis集群

    目录 一.首先配置redis.conf文件,... 1 1.获取配置文件... 1 2.修改各配置文件的参数... 2 二.下载redis镜像.启动容器... 2 1.创建网络... 2 2.拉取镜像 ...

  7. odoo开发笔记 -- 单台物理服务器上,利用docker部署多套odoo应用

    部署结构: 待更新! ----服务器硬件配置: 操作系统:ubuntu16.04-64bit CPU/内存:4核8G 1. 基础环境安装 nginx离线安装: docker环境安装: 2. 官方容器镜 ...

  8. 利用docker部署oxidized网络设备备份系统

    随着网络设备的增多,通过人手备份网络设备倍感压力,而且效率低.有编程基础的人可能会通过Python的parimiko 或者netmiko 连接到设备操作 把文件通过ftp 上传到FTP服务器, 在通过 ...

  9. 利用 docker 部署 elasticsearch 集群(单节点多实例)

    文章目录 1.环境介绍 2.拉取 `elasticserach` 镜像 3.创建 `elasticsearch` 数据目录 4.创建 `elasticsearch` 配置文件 5.配置JVM线程数量限 ...

随机推荐

  1. Python学习笔记(Ⅰ)——Python程序结构与基础语法

    作为微软的粉丝,最后终于向Python低头了,拖了两三个月终于下定决心学习Python了.不过由于之前受到C/C#等语言影响的思维定式,前期有些东西理解起来还是很费了些功夫的. 零.先抄书: 1.Py ...

  2. vi / vim 命令集合

    vim的命令太多了,不常用就会忘记,所以我决定把vim的各种命令整理下来,包括vim的插入删除.光标移动.多窗口编辑.复制粘贴.查找替换.以及一些常用命令 删除操作 dd 删除当前行 ndd      ...

  3. luogu P1003 铺地毯

    水题 #include<stdio.h> #include<string.h> #include<algorithm> using namespace std; t ...

  4. Java-关于Thread

    1)进程是受操作系统管理的基本运行单元,线程是进程中独立运行的子任务 2)Thread.start()方法通知线程规划器,告知其该线程已经准备完成,可以调用其run方法,这时就是异步的方法:如果直接调 ...

  5. 20175208 张家华 MyCP

    一.内容 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内容为 ...

  6. 顶尖 API 文档管理工具 (Yapi)

    原文地址:https://www.jianshu.com/p/a97d2efb23c5

  7. Java延时器

    package listener; import java.util.Timer; import java.util.TimerTask; public class Timeer { /** * sc ...

  8. Linux内核源码分析 day01——内存寻址

    前言 Linux内核源码分析 Antz系统编写已经开始了内核部分了,在编写时同时也参考学习一点Linux内核知识. 自制Antz操作系统 一个自制的操作系统,Antz .半图形化半命令式系统,同时嵌入 ...

  9. kubernets 概念

    理解 Kubernetes 对象 各种资源对象的理解和定义 Kubernetes 中 Pod 的选举过程

  10. python实现单例模式的三种方式及相关知识解释

    python实现单例模式的三种方式及相关知识解释 模块模式 装饰器模式 父类重写new继承 单例模式作为最常用的设计模式,在面试中很可能遇到要求手写.从最近的学习python的经验而言,singlet ...