Docker部署Ghost

来源:互联网 发布:安卓7.0 知乎 编辑:程序博客网 时间:2024/06/05 22:54

Docker 包括三个基本概念
    1.镜像(Image)
    2.容器(Container)
    3.仓库(Repository)
docker的特性:
    1.文件系统隔离:每个进程容器运行在完全独立的根文件系统里。
    2.资源隔离:可以使用cgroup为每个进程容器分配不同的系统资源,例如CPU和内存。
    3.网络隔离:每个进程容器运行在自己的网络命名空间里,拥有自己的虚拟接口和IP地址。
    4.写时复制:采用写时复制方式创建根文件系统,这让部署变得极其快捷,并且节省内存和硬盘空间。
    5.日志记录:Docker将会收集和记录每个进程容器的标准流(stdout/stderr/stdin),用于实时检索或批量检索。
    6.变更管理:容器文件系统的变更可以提交到新的映像中,并可重复使用以创建更多的容器。无需使用模板或手动配置


Ghost是一款非常出色的开源博客平台,无论是从架构、设计、易用性,它都要比Wordpress要好,界面简洁,专注写作,支持在线预览,在线写作,无论您是在哪里,都可以去写博客,尽情的享受写作带来的快感。


本次使用的系统是centos6,腾讯云主机,暂时没有使用域名,公网IP

安装Docker

rpm -Uvh http://dl.Fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpmyum -y install docker-io                      # 仅此一条命令就可以搞定;service docker start                          # 启动docker
然后看一下版本
docker version

然后安装Docker Compose

Docker Compose是在使用Docker容器部署分布式应用时的工具,可以定义哪个容器运行哪个应用。使用Compose,你只需定义一个多容器应用的yml文件,然后使用一条命令即可部署运行所有容器。
这里简单介绍下两种安装docker-compose的方式,第一种方式相对简单,但是由于网络问题,常常安装不上,并且经常会断开,第二种方式略微麻烦,但是安装过程比较稳定
方法一:
# curl -L https://github.com/docker/compose/releases/download/1.8.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose # chmod +x /usr/local/bin/docker-compose
查看版本信息
# docker-compose --version
但是此方法会经常因为网络的原因而无法安装

方法二:

1、安装python-pip
yum -y install epel-releaseyum -y install python-pip
2、安装docker-compose
pip install docker-compose
待安装完成后,执行查询版本的命令,即可安装docker-compose
docker-compose version


按照方法一

在Docker上部署Ghost

参考Docker官方文档:https://hub.docker.com/_/ghost/
How to use this image$ docker run --name some-ghost -d ghostThis will start a Ghost instance listening on the default Ghost port of 2368.If you'd like to be able to access the instance from the host without the container's IP, standard port mappings can be used:$ docker run --name some-ghost -p 8080:2368 -d ghostThen, access it via http://localhost:8080 or http://host-ip:8080 in a browser.You can also point the image to your existing content on your host:$ docker run --name some-ghost -v /path/to/ghost/blog:/var/lib/ghost ghostAlternatively you can use a data container that has a volume that points to /var/lib/ghost and then reference it:$ docker run --name some-ghost --volumes-from some-ghost-data ghost

我使用如下命令

docker run -d --name ghost -p 2368:2368 -v $PWD/data:/var/lib/ghost ghost


以上是最近本的步骤,可以得到下图所示


拓展:购买域名并使用DNS解析;设置Nginx反向代理;申请TLS证书


原创粉丝点击