feat: Add ghost and dawarich
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
---
|
||||
- name: Create directory for docker-compose
|
||||
ansible.builtin.file:
|
||||
path: /root/docker/
|
||||
state: directory
|
||||
mode: "0755"
|
||||
|
||||
- name: Copy docker-compose file
|
||||
template:
|
||||
src: "docker-compose.yml"
|
||||
dest: /root/docker/docker-compose.yml
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0755
|
||||
|
||||
- name: Run docker-compose
|
||||
ansible.builtin.shell:
|
||||
args:
|
||||
cmd: docker compose up -d
|
||||
chdir: /root/docker/
|
||||
@@ -0,0 +1,48 @@
|
||||
# Use the below flags to enable the Analytics or ActivityPub containers as well
|
||||
# COMPOSE_PROFILES=analytics,activitypub
|
||||
|
||||
# Ghost domain
|
||||
# Custom public domain Ghost will run on
|
||||
DOMAIN=example.com
|
||||
|
||||
# Ghost Admin domain
|
||||
# If you have Ghost Admin setup on a separate domain uncomment the line below and add the domain
|
||||
# You also need to uncomment the corresponding block in your Caddyfile
|
||||
# ADMIN_DOMAIN=
|
||||
|
||||
# Database settings
|
||||
# All database settings must not be changed once the database is initialised
|
||||
DATABASE_ROOT_PASSWORD=reallysecurerootpassword
|
||||
# DATABASE_USER=optionalusername
|
||||
DATABASE_PASSWORD=ghostpassword
|
||||
|
||||
# Ghost configuration (https://ghost.org/docs/config/)
|
||||
|
||||
# SMTP Email (https://ghost.org/docs/config/#mail)
|
||||
# Transactional email is required for logins, account creation (staff invites), password resets and other features
|
||||
# This is not related to bulk mail / newsletter sending
|
||||
mail__transport=SMTP
|
||||
mail__options__host=smtp.example.com
|
||||
mail__options__port=465
|
||||
mail__options__secure=true
|
||||
mail__options__auth__user=postmaster@example.com
|
||||
mail__options__auth__pass=1234567890
|
||||
|
||||
# Advanced customizations
|
||||
|
||||
# Force Ghost version
|
||||
# You should only do this if you need to pin a specific version
|
||||
# The update commands won't work
|
||||
# GHOST_VERSION=6-alpine
|
||||
|
||||
# Port Ghost should listen on
|
||||
# You should only need to edit this if you want to host
|
||||
# multiple sites on the same server
|
||||
# GHOST_PORT=2368
|
||||
|
||||
# Data locations
|
||||
# Location to store uploaded data
|
||||
UPLOAD_LOCATION=./data/ghost
|
||||
|
||||
# Location for database data
|
||||
MYSQL_DATA_LOCATION=./data/mysql
|
||||
@@ -0,0 +1,64 @@
|
||||
---
|
||||
# yaml-language-server: $schema=https://raw.githubusercontent.com/compose-spec/compose-spec/main/schema/compose-spec.json
|
||||
services:
|
||||
ghost:
|
||||
# Do not alter this without updating the Tinybird Sync container as well
|
||||
image: ghost:${GHOST_VERSION:-6-alpine}
|
||||
restart: always
|
||||
expose:
|
||||
- "127.0.0.1:${GHOST_PORT:-2368}:2368"
|
||||
# This is required to import current config when migrating
|
||||
env_file:
|
||||
- .env
|
||||
environment:
|
||||
NODE_ENV: production
|
||||
url: https://${DOMAIN:?DOMAIN environment variable is required}
|
||||
admin__url: ${ADMIN_DOMAIN:+https://${ADMIN_DOMAIN}}
|
||||
database__client: mysql
|
||||
database__connection__host: db
|
||||
database__connection__user: ${DATABASE_USER:-ghost}
|
||||
database__connection__password: ${DATABASE_PASSWORD:?DATABASE_PASSWORD environment variable is required}
|
||||
database__connection__database: ghost
|
||||
tinybird__tracker__endpoint: https://${DOMAIN:?DOMAIN environment variable is required}/.ghost/analytics/api/v1/page_hit
|
||||
tinybird__adminToken: ${TINYBIRD_ADMIN_TOKEN:-}
|
||||
tinybird__workspaceId: ${TINYBIRD_WORKSPACE_ID:-}
|
||||
tinybird__tracker__datasource: analytics_events
|
||||
tinybird__stats__endpoint: ${TINYBIRD_API_URL:-https://api.tinybird.co}
|
||||
volumes:
|
||||
- ${UPLOAD_LOCATION:-./data/ghost}:/var/lib/ghost/content
|
||||
depends_on:
|
||||
db:
|
||||
condition: service_healthy
|
||||
tinybird-sync:
|
||||
condition: service_completed_successfully
|
||||
required: false
|
||||
tinybird-deploy:
|
||||
condition: service_completed_successfully
|
||||
required: false
|
||||
activitypub:
|
||||
condition: service_started
|
||||
required: false
|
||||
|
||||
db:
|
||||
image: mysql:8.0.42@sha256:4445b2668d41143cb50e471ee207f8822006249b6859b24f7e12479684def5d9
|
||||
restart: always
|
||||
expose:
|
||||
- "3306"
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: ${DATABASE_ROOT_PASSWORD:?DATABASE_ROOT_PASSWORD environment variable is required}
|
||||
MYSQL_USER: ${DATABASE_USER:-ghost}
|
||||
MYSQL_PASSWORD: ${DATABASE_PASSWORD:?DATABASE_PASSWORD environment variable is required}
|
||||
MYSQL_DATABASE: ghost
|
||||
MYSQL_MULTIPLE_DATABASES: activitypub
|
||||
volumes:
|
||||
- ${MYSQL_DATA_LOCATION:-./data/mysql}:/var/lib/mysql
|
||||
- ./mysql-init:/docker-entrypoint-initdb.d
|
||||
healthcheck:
|
||||
test: mysqladmin ping -p$$MYSQL_ROOT_PASSWORD -h 127.0.0.1
|
||||
interval: 1s
|
||||
start_period: 30s
|
||||
start_interval: 10s
|
||||
retries: 120
|
||||
env_file:
|
||||
- .env
|
||||
|
||||
Reference in New Issue
Block a user