Även om du kan använda många verktyg, tekniker och stackar för att bygga en webbplats, är Ghost CMS eller Ghost ett otroligt val.
Om du inte är bekant är Ghost en gratis och öppen källkod för professionell publiceringsplattform som är byggd på Node.Js-teknologistacken. Ghost erbjuder ett otroligt strömlinjeformat och intuitivt publiceringsgränssnitt med exceptionella verktyg för att skapa innehåll. Det ger också ett brett utbud av integration med verktyg som Zapier, Google Analytics och mer.
Ett av sätten att skapa en Ghost-webbplats är att själv hosta den med hjälp av verktyg som Docker. Lyckligtvis tillhandahåller Ghost en läsgjord Ghost-bild som vi kan använda för att snabbt köra en Ghost-webbplats som vi kan se i den här handledningen.
Krav:
Innan vi börjar, se till att du har följande verktyg och krav:
- Installerade Docker Engine på din maskin
- Nätverksanslutning
- Sudo eller administrativa behörigheter för att köra Docker-behållarna
Med de givna kraven kan vi lära oss hur man kör Ghost CMS med Docker.
Börja med att se till att du har Docker version 20 och högre:
$ docker versionKommandot bör returnera en utdata med detaljer om den installerade Docker-versionen enligt följande:
Klient: Docker Engine - Community
Version: 23.0.6
API-version: 1,42
Go-version: go1.19.9
Git commit: ef23cbc
Byggd: Fre maj 5 tjugoett : 18 : 13 2023
DU / Arch: linux / amd64
Sammanhang: standard
Server: Docker Engine - Community
Motor:
Version: 23.0.6
API-version: 1,42 ( lägsta version 1.12 )
Go-version: go1.19.9
Git commit: 9dbdbd4
Byggd: fre maj 5 tjugoett : 18 : 13 2023
DU / Arch: linux / amd64
Experimentell: falsk
containerd:
Version: 1.6.21
GitCommit: 3dce8eb055cbb6872793272b4f20ed16117344f8
Springa:
Version: 1.1.7
GitCommit: v1.1.7- 0 -g860f061
docker-init:
Version: 0.19.0
GitCommit: de40ad0
Dra Ghost Docker-bilden
Nästa steg är att ladda ner Ghost-bilden från Docker Hub. Vi kan göra detta med kommandot Docker 'pull' enligt följande:
$ Hamnarbetare dra spöke
Kör Ghost Development Instance på standardporten
När vi har laddat ner Ghost-bilden kan vi använda den för att köra en Ghost-instans som körs på standardporten 2368 som visas i följande kommando:
$ hamnarkörning -d --namn ghost-dev -Det är NODE_ENV =utvecklingsspökeDet givna kommandot använder kommandot Docker 'run' för att starta en ny spökdev-behållare med spökbilden.
Efter framgång kan du komma åt den nya Ghost-webbplatsen på http://localhost:2368 . För att komma åt Ghost Admin-gränssnittet kan du använda http://localhost:2368/ghost .
Om du vill köra Ghost på en anpassad port kan du använda kommandot enligt följande:
$ hamnarkörning -d --namn ghost-dev -Det är NODE_ENV =utveckling -Det är url =http: // lokal värd: 9001 -s 9001 : 2368 spökeI det här fallet säger vi till Docker att köra behållaren och mappa port 9001 på värdporten till 2368 på behållaren.
Du kan sedan komma åt Ghost-webbplatsen i den definierade URL:en.
Du kan också konfigurera de andra Ghost-parametrarna när du startar behållaren som visas i följande resurs:
https://ghost.org/docs/config/#running-ghost-with-config-env-variables
Kör Ghost med Docker Compose
Om du vill använda Docker Compose-konfigurationen, börja med att skapa filen 'docker-compose.yml' och lägg till konfigurationen enligt följande:
version: '3.1'tjänster:
spöke:
bild: spöke: 4 -alpint
omstart: alltid
hamnar:
- 80 : 2368
miljö:
database__client: mysql
database__connection__host: db
database__connection__user: root
database__connection__lösenord: mysql
database__connection__databas: spöke
url: http: // lokal värd: 80
NODE_ENV: utveckling
db:
bild: mysql: 8,0
omstart: alltid
miljö:
MYSQL_ROOT_PASSWORD: mysql
I den tidigare konfigurationen definierar vi de tjänster som vi vill använda. Den första är Ghost-tjänsten som använder Ghost-bilden. Vi mappar sedan Ghost-porten till port 80 på värddatorn där vi exponerar Ghost-instansen för internet via HTTP.
Vi konfigurerar även databasparametrarna för Ghost-webbplatsen som databasklienten, databasvärden, MySQL-användare och lösenord med mera.
Slutligen definierar vi databastjänsten som använder MySQL 8.0-bilden.
För att köra den tidigare konfigurationen använder vi följande kommando:
$ docker-komponera -f docker-compose.yml upp
När du har skapat den kan du komma åt Ghost-webbplatsen på http://localhost:80 .
Slutsats
Det här inlägget utforskade grunderna för att köra ett Ghost CMS med Docker och Docker Compose. Utforska gärna dokumentationen för att lära dig mer.