Costruire un'immagine da rivendere in Digital Ocean

Cosa starai creando

In questo tutorial, ti guiderò nella creazione di un'istanza server preconfigurata che esegue WordPress (o altre app basate su LAMP) che puoi clonare e trasferire ripetutamente ai client. Uso la capacità di immagine di Digital Ocean per vendere il mio WordPress Quickstart e alcune delle mie app basate su LAMP come Simplify Email e Simple Monitor. In parte a causa di questa funzione, Digital Ocean è diventata la mia web host preferita quest'anno.

Con Digital Ocean, un'istantanea è una copia al momento di una specifica istanza del server basata su cloud. Ti permette di duplicare istanze e trasferirle ai clienti via email. Ciò consente a qualcuno di iniziare rapidamente e facilmente con un'immagine server e uno stack di applicazioni preconfigurati.

Ad esempio, offro una versione preconfigurata e pre-ottimizzata di WordPress, che chiamo Quickstart. È una versione di WordPress preinstallata con un set di plugin super utili ed è anche pre-ottimizzata con W3TC e Varnish Cache, come descritto nel tutorial Tuts di ottimizzazione di WordPress con Varnish e W3 Total Cache. Quando trasferisco una copia di questa immagine ai client, è la versione più veloce, più semplice e meglio configurata di WordPress che posso offrire. Questo processo rende incredibilmente facile iniziare nuovi siti WordPress. In questo tutorial, ti mostrerò come costruire le tue immagini in Digital Ocean da condividere con i clienti.

Iniziare

Se vuoi provare questo con un'applicazione LAMP, puoi trovare la mia guida per registrarti e impostare istanze generiche a Digital Ocean qui. Se vuoi usare WordPress, puoi seguirlo. Ti guiderò attraverso la creazione di un droplet, l'installazione di WordPress, l'aggiunta di temi e plug-in, l'acquisizione di un'istantanea, la clonazione dell'istantanea e il loro trasferimento ai client. Ho pubblicato una guida più dettagliata sull'installazione di WordPress in Digital Ocean qui.

Creazione del tuo droplet

Per prima cosa, creiamo una goccia. Clicca il Creare pulsante:

Chiamerò il mio image.publishingwordpress.com ma puoi nominare qualsiasi cosa generica. Userò la dimensione dell'immagine di 512 MB:

Prendi nota della regione scelta, poiché il tuo cliente sarà in grado di creare un'istanza dell'immagine nella stessa regione, tuttavia, se necessario, puoi anche trasferire la regione della tua istantanea prima di inviarla al tuo cliente..

Clicca il applicazioni scheda e scegliere LAMP su Ubuntu 14.xx:

Digital Ocean inizierà a creare la tua droplet:

Al termine, vedrai questa pagina:

Riceverai anche un'email come quella qui sotto:

Ora puoi visitare il tuo registrar di domini e modificare i tuoi record DNS per indirizzare il tuo dominio o sottodominio al nuovo indirizzo IP. Nel mio caso, sto indicando il record A per image.publishingwithwordpress.com198.199.117.46. La tua differenza sarà, ovviamente.

Non è necessario attendere la propagazione del DNS per iniziare a configurare l'istanza. Accedi con il tuo indirizzo IP tramite SSH. Ti verrà richiesto di cambiare la password da ciò che hai ricevuto nell'e-mail:

Aggiorniamo l'immagine:

sudo apt-get update sudo apt-get dist-upgrade sudo reboot

Suggerisco inoltre di installare i seguenti componenti, che utilizzeremo in WordPress e vari plugin:

sudo apt-get install zip php5-curl sudo a2enmod rewrite

Accendere l'Apache mod_rewrite consentirà per gli indirizzi di permalink in WordPress, che sono più user-friendly e migliorare l'ottimizzazione dei motori di ricerca.

Raccomando di correre mysql_secure_installation anche:

mysql_secure_installation

Per eseguire questo script, è necessario prendere nota della password di root MySQL, che appare quando si accede all'istanza.

Se utilizzi il droplet da 512 MB di RAM $ 5 al mese, ti consigliamo di creare un file di scambio per WordPress per funzionare correttamente, altrimenti il ​​sistema esaurirà la memoria e si bloccherà ripetutamente:

dd if = / dev / zero di = / swapfile bs = 1M count = 1024 mkswap / swapfile swapon / swapfile

Quindi aggiungeremo al fstab file per comunicare al sistema lo swapfile:

sudo nano / etc / fstab

Aggiungi questa riga:

/ swapfile swap swap default 0 0

L'istanza da $ 10 al mese da 1 GB eseguirà WordPress senza problemi.

Ora, siamo pronti per installare WordPress:

Installazione di WordPress

Creare una directory www con le autorizzazioni per il server Web Apache:

sudo mkdir / var / www sudo chown www-data: www-data / var / www cd / var / www

Scarica l'ultima versione di WordPress, espandi l'archivio e imposta le autorizzazioni:

cd / var / www sudo wget http://wordpress.org/latest.tar.gz sudo tar -xzvf latest.tar.gz sudo chown -R www-data: www-data wordpress

Ora creiamo il database di WordPress in MySQL. Prendi nota del tuo nome utente e password:

mysql -u root -p crea database wordpress; concedere tutti i privilegi su wordpress. * A "tuo-mysql-username" @ "localhost" identificato da "tua-mysql-password"; privilegi di flush; Uscita;

Creiamo il file di configurazione di Apache per WordPress:

cd / etc / apache2 / sites-available sudo nano 000-wordpress.conf

Incolla e personalizza la seguente configurazione dell'host virtuale:

 ServerName yourdomainname.com DocumentRoot / var / www / wordpress DirectoryIndex index.php  AllowOverride All Order Nega, Consenti Consenti da tutti  

Abilita il sito Apache per WordPress e disabilita il sito predefinito di Ubuntu:

sudo a2dissite 000-default.conf sudo a2ensite 000-wordpress.conf sudo service apache2 reload

Visita il tuo sito Web per configurare WordPress tramite l'interfaccia utente web utilizzando le impostazioni del database dall'alto. Quando scegli titoli e accessi, scegli quelli generici e prendi nota degli accessi.

Accedi con le tue credenziali generiche e dovresti vedere la dashboard:

Poiché si tratta di un'immagine generica che verrà duplicata e trasferita, l'utente avrà bisogno di WordPress per aggiornare l'URL del sito per conto proprio. Modifichiamo il file di configurazione di WordPress per includere un flag di riposizionamento. Dovrai disabilitare il tuo client dopo aver modificato l'URL del tuo sito nelle impostazioni generali del dashboard.

sudo nano /var/www/wordpress/wp-config.php

Ora aggiungi la seguente riga:

define ( 'RELOCATE', true);

Quando l'utente aggiorna l'URL del proprio sito nel dashboard, WordPress aggiornerà l'intero database. Dopo averlo fatto una volta, il cliente può commentare o eliminare questa riga.

Suggerisco anche di aggiungere il FS_DIRECT flag per l'installazione di plugin più semplice:

define ('FS_METHOD', 'direct'); // per l'installazione automatica dei plug-in

Installare un tema

A scopo dimostrativo, installerò il nuovo semplicistico tema di Minnow. Puoi installarlo cercando:

Ecco come appare:

Successivamente, installeremo tutti i plugin che vogliamo che i nostri clienti abbiano.

Installare i plugin

Spetta a te quali plugin desideri installare. Tengo un elenco di plugin consigliati qui. Andiamo avanti e installiamo il plug-in Yoast SEO, che è un caposaldo per me. Lo uso perché aiuta nell'ottimizzazione dei motori di ricerca e nella generazione di sitemap.

Puoi visitare il Aggiungi un nuovo plug-in pagina e cercala per installarla e attivarla:

A questo punto, puoi eseguire qualsiasi configurazione WordPress comune che desideri condividere con tutti i tuoi clienti a valle. Ad esempio, potresti installare più temi e plug-in. Potresti attivare i permalink. Potresti configurare alcune impostazioni di base del tema. Dipende solo da te.

Tutto ciò che personalizzi verrà replicato quando clonerai la prossima istantanea e la trasferirai ai tuoi clienti. I tuoi clienti dovranno personalizzare e configurare qualsiasi cosa tu scelga di non aggiornare.

Scattare una foto

Dopo aver realizzato tutte le installazioni e le configurazioni comuni, possiamo procedere e scattare un'istantanea della tua goccia. Digital Ocean richiede di spegnere l'istanza. È meglio farlo dalla console della riga di comando.

sudo poweroff

Visita la pagina Droplet su Digital Ocean e fai clic sulla scheda snapshot. Di solito scelgo un nome per l'istantanea che indica un numero sequenziale di cloni, ad es. wp-image-000. Quindi, fare clic Scatta un'istantanea.

Digital Ocean può impiegare alcuni minuti per creare la tua istantanea.

Una volta completata l'immagine, Digital Ocean riavvierà automaticamente la tua gocciolina.

Duplicazione di un'immagine

Per creare più copie dell'immagine, basta ripetere i passaggi sopra. Spegnere la goccia dalla riga di comando. Prendi un'altra istantanea. È un po 'dispendioso in termini di tempo ma piuttosto semplice.

Nel prossimo tutorial, ti mostrerò come utilizzare l'API Digital Ocean per automatizzare questo processo.

Digital Ocean non si carica per la memorizzazione di istantanee (tranne piccole quantità). È possibile scegliere se distruggere o meno la gocciolina originale per evitare costi mensili. Se lo fai, puoi sempre ricrearlo da un'istantanea quando è necessario nuovamente.

Trasferimento ai clienti

Per trasferire un'istantanea a un cliente, visita il immagini pagina:

Fai clic sull'icona a sinistra con il profilo di una persona per specificare l'indirizzo email del titolare dell'account Digital Ocean da trasferire a:

Entro pochi minuti, l'istantanea apparirà nell'account del tuo cliente, nella pagina Immagini. Dovranno approvare l'immagine per accettarla nel loro account.

Tieni presente che è importante che i tuoi clienti accettino solo istantanee da utenti fidati, poiché è facile per qualcuno installare software dannoso su un'immagine prima di creare un'istantanea e trasferirla. Digital Ocean potrebbe offrire un sistema di istantanee di fiducia in futuro.

Creare un droplet da un'istantanea

Creare un droplet da un'istantanea è abbastanza semplice. Basta visitare il Crea Droplet pagina, selezionare la regione in cui è stata creata l'immagine e fare clic su Le mie istantanee scheda. Quindi è possibile selezionare l'immagine da utilizzare per creare un'istanza del droplet.

Il client può personalizzare l'hostname come preferisce, ma tutte le altre impostazioni rimarranno le stesse.

In altre parole, accederanno all'istanza con lo stesso nome utente e password di gestione dello snapshot originale-non quello nuovo che Digital Ocean invierà loro. Utilizzeranno inizialmente anche il login e la password del dashboard WordPress del client-admin. È una buona idea che cambino tutte le loro password di cruscotto server, MySQL e WP dopo che il loro droplet è stato configurato.

Una volta che hanno creato la loro droplet dall'istantanea, dovranno configurare il loro DNS per indirizzare l'URL del sito prescelto all'indirizzo IP per il droplet. E, dovranno modificare l'host virtuale di WordPress Apache per il loro nome di dominio e riavviare Apache.

Ho trovato questo tipo di WordPress Quickstart è il modo più veloce per me per aiutare i clienti a iniziare su nuovi siti. Puoi anche utilizzare questo approccio per qualsiasi applicazione LAMP, ad es. Semplifica l'email.

Cosa hai imparato

Ora sai come costruire un'istanza basata su cloud di un'applicazione come WordPress che puoi clonare e trasferire ripetutamente ai client. In un prossimo tutorial, ti mostrerò come utilizzare l'API Digital Ocean per automatizzare il processo di clonazione delle istantanee.

Spero che tu abbia trovato questo interessante e utile. Non esitate a postare le vostre domande e commenti qui sotto. Puoi anche raggiungermi su Twitter @reifman o mandarmi un'email direttamente. Segui la pagina dei miei Tuts + istruttore per vedere gli articoli futuri in questa serie.

Link correlati

  • API Digital Ocean
  • Avvio rapido di WordPress
  • Plugin consigliati per WordPress
  • Codice WordPress