Prima applicazione in produzione

Salve.
Finalmente posso mettere in produzione la mia prima applicazione in
rails.
Niente di eccezionale :slight_smile:
Nella macchina dove dovro’ deployare l’applicazione, oltre a ruby,
dovro’ installare anche tutte le gem necessarie, rails, postgres,
ecc.?
Se dovessi apportare delle modifiche all’applicazione, devo poi
rideployare tutto oppure posso, nell’ambiente di produzione
semplicemente sovrascrivere i files modificati?

2009/2/24 Mauro [email protected]:

Salve.
Finalmente posso mettere in produzione la mia prima applicazione in rails.

ottimo, allora e’ il momento giusto per guardare come funziona /
imparare Capistrano: http://capify.org/

Nella macchina dove dovro’ deployare l’applicazione, oltre a ruby,
dovro’ installare anche tutte le gem necessarie, rails, postgres,
ecc.?

Solitamente si (immagino si tratti di un server dedicato o di un vps
che devi configurare)

ciao,
Luca

Msan M. wrote:

no non e’ un server dedicato, ci girano anche altri servizi ma non ho
altre macchine a disposizione…che e’ un vps?

In tre parole: una virtual machine. Con un po’ più di dettaglio

Ci sono centinaia di aziende che vendono vps per pochi euro al mese ma
se hai una tua macchina e tenerla in un data center non ti costa troppo,
meglio così.

Paolo

2009/2/24 Luca M. [email protected]:

2009/2/24 Mauro [email protected]:

Salve.
Finalmente posso mettere in produzione la mia prima applicazione in rails.

ottimo, allora e’ il momento giusto per guardare come funziona /
imparare Capistrano: http://capify.org/

Beh e’ solo una piccolissima applicazione, vorrei prima fare le cose a
mano e successivamente magari utilizzare dei tools.

Nella macchina dove dovro’ deployare l’applicazione, oltre a ruby,
dovro’ installare anche tutte le gem necessarie, rails, postgres,
ecc.?

Solitamente si (immagino si tratti di un server dedicato o di un vps
che devi configurare)

no non e’ un server dedicato, ci girano anche altri servizi ma non ho
altre macchine a disposizione…che e’ un vps?

2009/2/24 Paolo M. [email protected]:

Msan M. wrote:

no non e’ un server dedicato, ci girano anche altri servizi ma non ho
altre macchine a disposizione…che e’ un vps?

In tre parole: una virtual machine. Con un po’ più di dettaglio
Virtual private server - Wikipedia

Quello che voglio capire ora e’ come deployare l’applicazione a mano,
solo dopo usero’ tools come capistrano.
Sulla mia macchina locale ho tutta l’applicazione, basta copiare tutto
sul server ad esempio sotto /var/www?

2009/2/24 David W. [email protected]:

Quello che voglio capire ora e’ come deployare l’applicazione a mano,
solo dopo usero’ tools come capistrano.
Sulla mia macchina locale ho tutta l’applicazione, basta copiare tutto
sul server ad esempio sotto /var/www?

Si`, per esempio:

/var/www/foobar/rubysite
/logs

La domanda e’: se metto tutta l’applicazione sotto, ad esempio
/var/www, in questo modo rendo visibili anche file come database.yml e
altri files che non e’ bene rendere visibili, scusa la mia ignoranza.

Dovrebbe bastare se hai Passenger.

Cos’e’ Passenger?

Come prossimo passo, potrebbe essere una buon’idea usare qualcosa come
subversion o git per fare il ‘checkout’ del sito in produzione, cosi lavori cosi:

  • Modifiche locali sul computer di sviluppo…
  • Commit sul computer locale.
  • Checkout sul sito in produzione.

Uso cvs e’ lo stesso?
Ho un server cvs sul quale mettere i progetti, lavoro in locale e
committo sempre sul server cvs.

Quello che voglio capire ora e’ come deployare l’applicazione a mano,
solo dopo usero’ tools come capistrano.
Sulla mia macchina locale ho tutta l’applicazione, basta copiare tutto
sul server ad esempio sotto /var/www?

Si`, per esempio:

/var/www/foobar/rubysite
/logs

Dovrebbe bastare se hai Passenger.

Come prossimo passo, potrebbe essere una buon’idea usare qualcosa come
subversion o git per fare il ‘checkout’ del sito in produzione, cosi lavori cosi:

  • Modifiche locali sul computer di sviluppo…
  • Commit sul computer locale.
  • Checkout sul sito in produzione.

Almeno io trovo comodo lavorare cosi... se poi devo modificare qualcosa sul sito in produzione (ogni tanto capita), faccio il commit la, e checkout sul sito locale. Con git, e tutto quanto un po' piu
complicato, ma il workflow e piu o meno quello.


David N. Welton

http://www.welton.it/davidw/

http://www.dedasys.com/
Sent from: Innsbruck 7 Austria.

/var/www/foobar/rubysite
/logs

La domanda e’: se metto tutta l’applicazione sotto, ad esempio
/var/www, in questo modo rendo visibili anche file come database.yml e
altri files che non e’ bene rendere visibili, scusa la mia ignoranza.

Non se hai configurato bene Apache:-) Dovrebbe puntare a qualcosa del
genere il virtual host:

    DocumentRoot /var/www/foobar/myapp/public

Dovrebbe bastare se hai Passenger.

Cos’e’ Passenger?

committo sempre sul server cvs.
CVS e` un po’ vecchio, ma funziona.


David N. Welton

http://www.welton.it/davidw/

http://www.dedasys.com/
Sent from: Innsbruck 7 Austria.

2009/2/24 Mauro [email protected]:

2009/2/24 David W. [email protected]:

Cos’e’ Passenger?

http://www.modrails.com/

Interessante :slight_smile:

Nello stesso sito si parla di ruby enterprise edition, cosa ne pensate?

2009/2/24 David W. [email protected]:

Cos’e’ Passenger?

http://www.modrails.com/

Interessante :slight_smile:

2009/2/24 David W. [email protected]:

   DocumentRoot /var/www/foobar/myapp/public

Perdonami…ma sotto /var/www/foobar/myapp/pubblic cosa ci va?
L’intera struttura della mia applicazione rails? File di
configurazione compresi?

/var/www/foobar/myapp è la directory principale della tua applicazione
con app, config etc… che contiene anche public.

Vi segnalo un interessante tutorial:

Passenger-stack demo

Luca

Nello stesso sito si parla di ruby enterprise edition, cosa ne pensate?

Se stai affrontando tante altre novita, non vale la pena giocare anche con quello. Alla fine, e solo una versione un po’ hackerata del
garbage collector di Ruby. Ti puo aiutare a risparmiare memoria sul server, ma non molto di piu.


David N. Welton

http://www.welton.it/davidw/

http://www.dedasys.com/
Sent from: Innsbruck 7 Austria.

2009/2/24 Luca G. [email protected]:

/var/www/foobar/myapp è la directory principale della tua applicazione
con app, config etc… che contiene anche public.

appunto, se /var/www/foobar/myapp e’ la document Root saranno visibili
anche i files di configurazione come database.yml, ecc.
Forse mi sfugge qualcosa.

On Wed, Feb 25, 2009 at 8:19 AM, Mauro [email protected] wrote:

2009/2/24 Luca G. [email protected]:

/var/www/foobar/myapp è la directory principale della tua applicazione
con app, config etc… che contiene anche public.

appunto, se /var/www/foobar/myapp e’ la document Root saranno visibili
anche i files di configurazione come database.yml, ecc.
Forse mi sfugge qualcosa.

questa e’ la direttiva per apache che ti veniva suggerita:

DocumentRoot /var/www/foobar/myapp/public

cosi avrai:

  • directory principale dell’applicazione —> /var/www/foobar/myapp
  • document root —> /var/www/foobar/myapp/public

quindi quello che risulta visibili e’ solo il contenuto di public

ciao,
Luca