Merge pull request #2177 from infosiftr/ghost-sqlite

Adjust ghost docs to use "development" mode to use sqlite
This commit is contained in:
Tianon Gravi 2022-08-16 17:09:02 -07:00 committed by GitHub
commit 6ae508e800
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 13 deletions

View File

@ -8,10 +8,10 @@ Ghost is a free and open source blogging platform written in JavaScript and dist
# How to use this image # How to use this image
This will start a Ghost instance listening on the default Ghost port of 2368. This will start a Ghost development instance listening on the default Ghost port of 2368.
```console ```console
$ docker run -d --name some-ghost %%IMAGE%% $ docker run -d --name some-ghost -e NODE_ENV=development %%IMAGE%%
``` ```
## Custom port ## Custom port
@ -19,7 +19,7 @@ $ docker run -d --name some-ghost %%IMAGE%%
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: 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:
```console ```console
$ docker run -d --name some-ghost -e url=http://localhost:3001 -p 3001:2368 %%IMAGE%% $ docker run -d --name some-ghost -e NODE_ENV=development -e url=http://localhost:3001 -p 3001:2368 %%IMAGE%%
``` ```
If all goes well, you'll be able to access your new site on `http://localhost:3001` and `http://localhost:3001/ghost` to access Ghost Admin (or `http://host-ip:3001` and `http://host-ip:3001/ghost`, respectively). If all goes well, you'll be able to access your new site on `http://localhost:3001` and `http://localhost:3001/ghost` to access Ghost Admin (or `http://host-ip:3001` and `http://host-ip:3001/ghost`, respectively).
@ -35,7 +35,7 @@ For upgrading your Ghost container you will want to mount your data to the appro
Mount your existing content. In this example we also use the Alpine base image. Mount your existing content. In this example we also use the Alpine base image.
```console ```console
$ docker run -d --name some-ghost -p 3001:2368 -v /path/to/ghost/blog:/var/lib/ghost/content %%IMAGE%%:alpine $ docker run -d --name some-ghost -e NODE_ENV=development -p 3001:2368 -v /path/to/ghost/blog:/var/lib/ghost/content %%IMAGE%%:alpine
``` ```
### Docker Volume ### Docker Volume
@ -43,19 +43,15 @@ $ docker run -d --name some-ghost -p 3001:2368 -v /path/to/ghost/blog:/var/lib/g
Alternatively you can use a named [docker volume](https://docs.docker.com/storage/volumes/) instead of a direct host path for `/var/lib/ghost/content`: Alternatively you can use a named [docker volume](https://docs.docker.com/storage/volumes/) instead of a direct host path for `/var/lib/ghost/content`:
```console ```console
$ docker run -d --name some-ghost -v some-ghost-data:/var/lib/ghost/content %%IMAGE%% $ docker run -d --name some-ghost -e NODE_ENV=development -v some-ghost-data:/var/lib/ghost/content %%IMAGE%%
``` ```
### SQLite Database
This Docker image for Ghost uses SQLite. There is nothing special to configure.
## Configuration ## Configuration
All Ghost configuration parameters (such as `url`) can be specified via environment variables. See [the Ghost documentation](https://ghost.org/docs/concepts/config/#running-ghost-with-config-env-variables) for details about what configuration is allowed and how to convert a nested configuration key into the appropriate environment variable name: All Ghost configuration parameters (such as `url`) can be specified via environment variables. See [the Ghost documentation](https://ghost.org/docs/concepts/config/#running-ghost-with-config-env-variables) for details about what configuration is allowed and how to convert a nested configuration key into the appropriate environment variable name:
```console ```console
$ docker run -d --name some-ghost -e url=http://some-ghost.example.com %%IMAGE%% $ docker run -d --name some-ghost -e NODE_ENV=development -e url=http://some-ghost.example.com %%IMAGE%%
``` ```
(There are further configuration examples in the `stack.yml` listed below.) (There are further configuration examples in the `stack.yml` listed below.)
@ -73,6 +69,12 @@ $ docker exec <container-id> node --version
While the Docker images do have Ghost-CLI available and do use some of its commands to set up the base Ghost image, many of the other Ghost-CLI commands won't work correctly, and really aren't designed/intended to. For more info see [docker-library/ghost#156 (comment)](https://github.com/docker-library/ghost/issues/156#issuecomment-428159861) While the Docker images do have Ghost-CLI available and do use some of its commands to set up the base Ghost image, many of the other Ghost-CLI commands won't work correctly, and really aren't designed/intended to. For more info see [docker-library/ghost#156 (comment)](https://github.com/docker-library/ghost/issues/156#issuecomment-428159861)
## Production mode
To run Ghost for production you'll also need to be running with MySQL 8, https, and a reverse proxy configured with appropriate `X-Forwarded-For`, `X-Forwared-Host`, and `X-Forwarded-Proto` (`https`) headers.
The following example demonstrates some of the necessary configuration for running with MySQL. For more detail, see [Ghost's "Configuration options" documentation](https://ghost.org/docs/config/#configuration-options).
## %%STACK%% ## %%STACK%%
Run `docker stack deploy -c stack.yml %%REPO%%` (or `docker-compose -f stack.yml up`), wait for it to initialize completely, and visit `http://swarm-ip:8080`, `http://localhost:8080`, or `http://host-ip:8080` (as appropriate). Run `docker stack deploy -c stack.yml %%REPO%%` (or `docker-compose -f stack.yml up`), wait for it to initialize completely, and visit `http://swarm-ip:8080`, `http://localhost:8080`, or `http://host-ip:8080` (as appropriate).

View File

@ -1,6 +1,3 @@
# by default, the Ghost image will use SQLite (and thus requires no separate database container)
# we have used MySQL here merely for demonstration purposes (especially environment-variable-based configuration)
version: '3.1' version: '3.1'
services: services: