GithubHelp home page GithubHelp logo

ghost-docker's Introduction

Ghost on Docker + Digital Ocean Apps

This is what I use to get a personal repo working on Docker + Digital Ocean Apps. Combined with a managed database and spaces, this setup costs me $25/mo - and I don't have to worry about backups, security updates, ssl certificates, and so on.

This could also work outside of Digital Ocean apps.

Running Locally

Without Docker

You can run this app locally without docker with the run.sh command:

ENV=development ./run.sh

This assumes you have a local MySQL 8 server running with a user named legacyroot that uses the legacy MySQL native password authorization. See local_migration_workaround/local-ghost-setup.sql for some sql snippets on how to set this up

With Docker

You can build and run this docker container like any normal docker setup.

This repo has some scripts provided to make this simpelr:

tools/local-docker-build.sh
tools/local-docker-run.sh

Caveat: I haven't gotten this working locally with docker + MySQL (i.e. using docker compose). So if you're going to run this locally, you may need to modify the docker config to use an sqlite3 database.

In Production with Digital Ocean Apps

This repo is designed to work with Digital Ocean Apps. You should be able to simply fork this repo, add your own touches to it, and create a new digital ocean app with your forked repo.

The only remaining tasks are adding a managed database and setting up spaces (i.e. image uploads). Since Docker containers will get nuked on every deploy, you have to set up your blog such that it doesn't rely on TODO FIGURE THIS OUT

Secret key management is done locally with

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.