美文网首页
1.使用Ghost-Docker 构建博客并配置Mysql数据库

1.使用Ghost-Docker 构建博客并配置Mysql数据库

作者: Peacenloves | 来源:发表于2018-02-12 21:18 被阅读0次

1. 安装Docker

  • 使用yum下载
    yum -y install docker
  • 启动Docker后台服务
    service docker start

2. 使用Docker安装Ghost镜像

  • 安装镜像
    docker pull ghost
  • 查看镜像
    docker images

REPOSITORY:仓库地址
TAG:版本
IMAGE ID:镜像编号
  • 启动镜像,映射致80端口
    docker run -d --name ${names} -p 80:2368 -d ${image}
    #${names}: 容器启动后自定义名称
    #${image}: 启动镜像ID-对应下载的镜像
  • 查看运行的容器
    docker ps -a

COMMAND:指令,entrypoint使容器表现类似可执行程序,可以传递参数
PORTS:本机端口到docker容器映射关系
  • 访问本机IP可以看到画面,Ghost部署完成。


3. 使用Mysql数据库

  • Ghost默认使用sqlite3微型数据库,当数据增长会比较卡,推荐切换成Mysql
  1. 进入Docker-Ghost容器
    docker exec -it ${container_id} /bin/bash
  • 安装Vim编辑器
    #更新apt-get
    apt-get update
    #安装vim
    apt-get install vim 
  • 进入容器后默认在Ghost目录:/var/lib/ghost
  • 进入当前部署目录/var/lib/ghost/current/core
  • Docker默认使用的dev开发模式,修改为prod生产模式
    cd /var/lib/ghost/current/core
    vim index.js
    // ## Server Loader
    // Passes options through the boot process to get a server instance back
    var server = require('./server');

    // 将下面的`development`修改为`production`
    process.env.NODE_ENV = process.env.NODE_ENV || 'production';

    function makeGhost(options) {
        options = options || {};

        return server(options);
    }

    module.exports = makeGhost;
  • 使用:wq保存退出
  • 进入DB配置文件目录: /var/lib/ghost/current/core/server/config/env
  • 修改config.production.json
    {
        "database": {
            "client": "mysql",
            "connection": {
                "host"     : "172.17.0.1",
                "user"     : "",
                "password" : "",
                "database" : ""
            }
        },
        "paths": {
            "contentPath": "content/"
        },
        "logging": {
            "level": "info",
            "rotation": {
                "enabled": true
            },
            "transports": ["file", "stdout"]
        }
    }
  • 修改Mysql连接,如果主容器通信,只需要查看容器IP
    docker inspect ${container_id}
    "Networks": {
        "bridge": {
            "IPAMConfig": null,
            "Links": null,
            "Aliases": null,
            "NetworkID":     "",
            "EndpointID": "",
            "Gateway": "172.17.0.1",
            "IPAddress": "172.17.0.3",
            "IPPrefixLen": 16,
            "IPv6Gateway": "",
            "GlobalIPv6Address": "",
            "GlobalIPv6PrefixLen": 0,
            "MacAddress": ""
        }
    }
  • 修改完毕使用:wq退出
  • Ctrl + D退出容器
  • 停掉Ghost,重新启动
    docker stop ${container_id}
    docker start ${container_id}
  • Ghost会自动在Mysql中创建所需表。

相关文章

网友评论

      本文标题:1.使用Ghost-Docker 构建博客并配置Mysql数据库

      本文链接:https://www.haomeiwen.com/subject/umddtftx.html