[Ror-es] Deploy a producción de App de un novato
Tomás
tomasborrella at gmail.com
Mon Aug 10 08:06:36 GMT 2009
Yo también soy novato en el deployment de aplicaciones Rails, pero creo que
antes de "correr las migraciones en producción" (lo has puesto al final del
paso 1) tienes que "cambiar la config. de database.yml" (lo has puesto como
paso 2), porque si no lo haces así las migraciones no las estarías corriendo
en la base de datos de producción.
Que alguien me corrija si me equivoco.
2009/8/10 Andrés gutiérrez <andresgutgon at gmail.com>
> Buff!!! Borja gracias por la información. pero de momento, preferiría
> centrarme en pasos pequeños. Las tareas Rake, capistrano y esto de los
> templates que me dices, son cosas que te hacen la vida más fácil. Pero yo
> todavía "no lo he pasado mal". No sé de que va la historia. Necesito hacer
> todo el proceso pasito a pasito. Cuanto más detallado y más cosas tenga que
> hacer mejor. Se que es antiproductivo. Pero pienso que puede ser didactico.
>
> Por esto me gustaría centrarme en lo que es el paso de tener el codigo en
> un repositorio (detalles de subversión si es posible) y ponerlo en
> producción.
> Sólo me interesa eso ahora. Suponiendo que el repositorio y la App ambos
> estan en un server remoto fuera de mi máquina.
>
> Hasta ahora tengo claro que:
> 1- Crear la BBDD produccion + usuario de MySQL + ¿correr las migraciones en
> producción?
> 2- Cambiar la config de database.yml de producción para que apunte a esta
> base de datos.
> 3- Apuntar public_html, que es la carpeta que me dan en mi server para que
> muestre mis archivos públicos a traves de Apache a mi public de mi App.
> Mediante un symblink.
> 4-
>
> ¿Qué más hay que hacer?
>
> El 10 de agosto de 2009 09:16, Borja Martín <borjam at dagi3d.net> escribió:
>
>
>> Por eso me gustaría hacer todo lo que hace Capistarno de forma manual. Por
>>> ejemplo, encontre una receta para hacer los ignores necesarios de subversion
>>> cuando comienzas una App. Ahora que ya he ido por linea de comandos y he
>>> hecho un poco los ignores a pelo. Estoy encantado con esa receta.
>>> "setup_svn". Lo mismo me gustaría hacer con el deploy.
>>>
>>
>> Si el tema de los ignores de subversion es algo que haces siempre cuando
>> comienzas cada app, igual te interesa mirar el tema de las app templates:
>>
>> http://m.onkey.org/2008/12/4/rails-templates
>> http://railscasts.com/episodes/148-app-templates-in-rails-2-3
>>
>> saludos
>>
>>
>>>
>>>
>>>
>>> El 10 de agosto de 2009 02:05, Antonio Pardo <antonio.pardo at gmail.com>escribió:
>>>
>>>> Buenas,
>>>>
>>>> Andrés gutiérrez escribió:
>>>> > Por último, me gsutaría que alguién me diera una especie de TO-DO list
>>>> a
>>>> > hacer desde que yo creo una App hasta que la llevo a producción.
>>>> > Ej.:
>>>> > -Crear la BBDD en el servidor.
>>>> > -Decirle a Passenger que nuestra App esta en /path/to/my/App.
>>>> Passenger es
>>>> > lo que me dan a mi.
>>>> > -etc...
>>>>
>>>> crear la base de datos de producción en el servidor, configurar el
>>>> servidor web de produción y hacer el deploy con Capistrano es lo básico
>>>> para levantar la aplicación.
>>>>
>>>> > Quiero tener mi aplicación bajo un sistema de control de versiones.
>>>> (en mi
>>>> > caso subversión). El tema de crear un repositorio, acceder por ssh a
>>>> mi
>>>> > server ya lo he hecho
>>>>
>>>> Si estás pensando en tener la aplicación web de producción en el mismo
>>>> sitio donde tienes el repositorio Subversion, creo que no es buena idea
>>>> por motivos de seguridad.
>>>>
>>>> > a) MI maquina local con un "working directory" apuntando a la rama
>>>> TRUNK de
>>>> > mi repositorio
>>>>
>>>> Puedes tener todo el repo en local, así puedes hacer ramas y tagear.
>>>>
>>>> > El código de mi maquina local a TRUNK entiendo que lo modifico
>>>> mediante
>>>> > commits, pero ¿como cambio lo que tengo en producción por lo que tengo
>>>> en
>>>> > TRUNK? ¿O el esquema que presento es erroneo?
>>>>
>>>> De esto se encarga Capistrano. Al hacer el deploy este hace un export de
>>>> la rama que tu le indiques y se la lleva a la máquina con rol app.
>>>>
>>>> > Es la primera vez que hago muchas cosas, y las hago todas a la vez.
>>>> Tengo un
>>>> > pequeño follón de conceptos.
>>>>
>>>> Bienvenido al club :)
>>>>
>>>> > Vale, despues de tanto escribir tengo la pregunta que resume todo:
>>>> > ¿Cuál es el esquema para desarrollar una App Rails y ponerla en
>>>> producción?
>>>> > ¿Cómo debe de ser el flujo de trabajo?
>>>>
>>>> Pues yo hace poco he pasado a usar Git para mis pequeños desarrollos.
>>>> Cuando quiero hacer algo me creo una rama y cuando la he terminado hago
>>>> un merge a la rama master. Así tengo siempre la rama master funcionando.
>>>>
>>>> Con Git me estoy acostumbrando a hacer commits cada poco tiempo. Hago
>>>> los tests, escribo el código que los pasa y commit.
>>>>
>>>> Cuando pienso que la aplicación ya está cerca de estar terminada, me
>>>> monto con Virtualbox una máquina con Ubuntu Server LTS y hago ahí el
>>>> deploy para ver que tal. Desde hace poco estoy usando nginx con
>>>> mod_rails y estoy muy contento, atrás quedó la epoca de monit y los
>>>> mongrels.
>>>>
>>>> Y cuando voy a pasar a producción lo primero que hago es crear la base
>>>> de datos en el servidor, configurar el servidor web y retocar Capistrano
>>>> para que apunte al servidor de producción real.
>>>>
>>>> Pues así es como yo lo hago, seguro que hay otras formas.
>>>>
>>>> Saludos
>>>>
>>>>
>>>> _______________________________________________
>>>> Proudly free of Ruby Forum crossposting since 01/07/2009
>>>> Ror-es mailing list
>>>> Ror-es at lists.simplelogica.net
>>>> http://lists.simplelogica.net/mailman/listinfo/ror-es
>>>>
>>>>
>>>
>>>
>>> --
>>> Experiencia es lo que obtienes, cuando no obtienes lo que quieres.
>>>
>>> -----------------------------------------------------------------------------
>>> "Caminar sobre el agua y desarrollar software a partir de unas
>>> especificaciones es fácil. si ambas están congeladas."
>>> Edward V. Berard, ingeniero informático.
>>>
>>> _______________________________________________
>>> Proudly free of Ruby Forum crossposting since 01/07/2009
>>> Ror-es mailing list
>>> Ror-es at lists.simplelogica.net
>>> http://lists.simplelogica.net/mailman/listinfo/ror-es
>>>
>>>
>>
>>
>> --
>> def dagi3d(me)
>> case me
>> when :web then "http://dagi3d.net"
>> when :twitter then "http://twitter.com/dagi3d"
>> end
>> end
>>
>> _______________________________________________
>> Proudly free of Ruby Forum crossposting since 01/07/2009
>> Ror-es mailing list
>> Ror-es at lists.simplelogica.net
>> http://lists.simplelogica.net/mailman/listinfo/ror-es
>>
>>
>
>
> --
> Experiencia es lo que obtienes, cuando no obtienes lo que quieres.
>
> -----------------------------------------------------------------------------
> "Caminar sobre el agua y desarrollar software a partir de unas
> especificaciones es fácil. si ambas están congeladas."
> Edward V. Berard, ingeniero informático.
>
> _______________________________________________
> Proudly free of Ruby Forum crossposting since 01/07/2009
> Ror-es mailing list
> Ror-es at lists.simplelogica.net
> http://lists.simplelogica.net/mailman/listinfo/ror-es
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.simplelogica.net/pipermail/ror-es/attachments/20090810/c196d51c/attachment.htm
More information about the Ror-es
mailing list