Docker部署Ghost


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.rpm
yum -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-release
yum -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 ghost
This 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 ghost
Then, 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 ghost
Alternatively 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證書


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章