jwasham / docker-ghost-template Goto Github PK
View Code? Open in Web Editor NEWDocker composition of Ghost blog with Node, NGINX proxy, database, etc.
Docker composition of Ghost blog with Node, NGINX proxy, database, etc.
Hey John,
I don't want to abuse your time but maybe you can give me your cue. Have an issue where I can upload a picture via Ghost, see in in AWS S3 but Ghost is not seeing the picture and the cute giffy cat stays there for ever. Here is a screen cast (56 sec) about the setup http://jmp.sh/uyhocJC.
Could you point me to some docs about all the steps to configure AWS?
For anyone who would like to help, I created an official job for this - https://github.com/pascalandy/pair_programming_35tg2/tree/master/pair_programming_04
Thank you!
Hey John,
Since Ghost 0.10.0 the actual s3 plugin does not work anymore :( This is well documented by the Ghost team.
The good news is that other plugins that are supported. Those two looks solid:
Would be awesome to update this project, so we can update to Ghost 0.11 LTS. I'm still clueless about the way you inject the plug-in from the official image LOL.
Many, many thanks once again !
Cheers!
Pascal
Hi John,
I was checking out how i could install ghost, and came across your neat docker compose template.TL:DR , i didn't proceed with the ghost cli option due to networking policy within my place, and thought dockers is something i can look into.
I managed to run the docker-compose without issues, and all 3 containers start as expected.
Somehow, whenever i try to access ghost admin (http://myhost.com), i will get a 502 Bad Gateway error. Seems like the nginx container have issues connecting to ghost container.
Do i need to further configure nginx ?
2018/01/17 08:29:30 [error] 5#5: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 192.168.181.118, server: myhost.com, request: "GET /ghost/ HTTP/1.1", upstream: "http://172.19.0.3:2368/ghost/", host: "myhost.com"
default conf snippets
upstream ghost-upstream{
server ghost:2368;
}
server {
listen 80;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name ghost.domain.dev;
ssl_certificate /etc/nginx/ssl/ghost.domain.dev;.crt;
ssl_certificate_key /etc/nginx/ssl/ ghost.domain.dev;.key;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header HOST $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://ghost-upstream:2368;
proxy_redirect off;
}
location ~ /\. { deny all; access_log off; log_not_found off; }
}
Docker Compose snippets
nginx:
container_name: nginx
build: ./nginx
volumes:
- ./nginx/volumes/ssl:/etc/nginx/ssl:z
ports:
- "80:80"
- "443:443"
links:
- ghost
restart: always
ghost:
container_name: ghost
volumes:
- ./ghost/volumes/content:/var/lib/ghost/content:z
- ./ghost/volumes/config.js:/var/lib/ghost/config.js:z
build: ./ghost
expose:
- "2368" # makes it reachable by linked services but unreachable from host for security
environment: # this section can be commented to start in dev mode by default
- NODE_ENV=production
- WEB_DOMAIN=myhost.com
- DB_DATABASE=ghostdata
- DB_USER=xxx
- "DB_PASSWORD=xxx"
restart: always
links:
- mysql
Running RHEL 5.7
Docker version : 1.12.6,
Nginx Version : 1.13
MySql Version : 5.7
Ghost Version : 1.2
Thanks!
Hi John,
I really enjoy your setup at this point :) One big thing I would like is the ability to load a theme(s) from a git repo(s).
The goal is the avoid to manually upload themes in their running containers. That would allow us to quickly tried themes as well as developing theme just by typing docker-compose up -d
For example, how would you proceed to copy https://github.com/roryg/ghostwriter into /usr/src/ghost/themes/ ?
So far this is what I got:
I added these 2 lines to the entrypoint.sh
I created a copy-themes.sh into our directory copy
This brings the question of having ghost selecting the default theme... but this is for another moment :-p
Cheers!
Pascal
P.S. The docker team change something relate to theme but I do not understand the code here ;-/
docker-library/ghost@8c0d010
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.