目标:

在阿里云ECS服务器里使用Docker容器搭建一个Ghost博客。

环境:

操作系统--Ubuntu 16.04.2 LTS

docker版本--17.05.0-ce

docker-compose版本--1.13.0

方案:

利用Nginx作为Web服务器,反向代理Ghost应用,Nginx和Ghost都使用其官方镜像,通过docker-compose进行容器编排。

步骤:

1、拉取Nginx和Ghost的官方镜像

docker pull nginx:1.14
docker pull ghost:2.1.1

2、编写 docker-compose.yml 容器编排文件

version: "3"
services:
  ghost:
    container_name: "ghost"
    image: "ghost:2.1.1"
    restart: always 

  nginx:
    container_name: "nginx"
    image: "nginx:1.14"
    links:
      - "ghost"
    ports:
      - "80:80"
    volumes:
      - ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
    restart: always

3、编写Nginx的配置文件nginx.conf

http {
  server {
    listen [::]:80 default_server;
    listen 80;
    server_name www.59m59s.com;

    location / {
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection "upgrade";
      proxy_set_header Host $host;
      proxy_set_header   X-Real_IP $remote_addr;
      proxy_pass http://ghost:2368;
    }
  }
}

4、启动所有已经编排的容器

docker-compose up -d

5、浏览器访问网站即可打开Ghost首页