Kör ett Ghost CMS med Docker

Kor Ett Ghost Cms Med Docker



Webbplatser är den primära kommunikationskällan för varje individ eller enhet som vill etablera en onlinenärvaro. Oavsett om du lanserar en ny blogg där du kan uttrycka dina åsikter eller dela med dig av din kunskap, är det viktigt att ha en välutvecklad och presterande webbplats för att säkerställa att dina läsare får en bra upplevelse.

Ä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:



  1. Installerade Docker Engine på din maskin
  2. Nätverksanslutning
  3. 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 version

Kommandot 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öke

Det 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öke

I 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.