<div dir="ltr">I&#39;ll start taking a look and keep you posted.<div><br></div><div>Cheers,</div><div><br></div><div>Rafa</div></div><br><div class="gmail_quote"><div dir="ltr">El vie., 6 jul. 2018 a las 19:14, Rahul B (&lt;<a href="mailto:rahulb@media.mit.edu">rahulb@media.mit.edu</a>&gt;) escribió:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Yes, a Docker container would work fine. Of course the problem there is we need persistent storage for the database and the images.  Both of these should be read from environment variables.<div><br></div><div>I think this requires a change in the PageOneX configuration code.  Rails already supports <a href="http://guides.rubyonrails.org/configuring.html#configuring-a-database" target="_blank">specifying a database via a `DATABASE_URL` environment variable</a>.<div><br></div><div>For docker it looks like you can specific environment variables either on the command line individually or via a file (<a href="https://docs.docker.com/engine/reference/commandline/run/#set-environment-variables--e---env---env-file" target="_blank">docs</a>).</div><div><br></div><div>With that in mind, I think the main changes to make are probably to </div><div>a) Dockerize it</div><div>b) change the image uploading to save images to the path the environment variable specifies</div><div><br></div><div>Rahul<br><br><div class="gmail_quote"><div dir="ltr">On Fri, Jul 6, 2018 at 12:38 PM Rafael Porres Molina &lt;<a href="mailto:rporres@gmail.com" target="_blank">rporres@gmail.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi Rahul,<div><br></div><div>I&#39;m unsure if Pablo will be able to make it this late in the spanish afternoon, so I will ask some quesitons here just to understand better what&#39;s needed. </div><div><br></div><div>I guess what it is needed now is to be able to run pageonex in a Docker container, am I right?<br></div><div><br></div><div>The other thing that is important is to be able to configure the root of the image storage through an env variable so that you can do something like</div><div><br></div><div>docker run --env ROOT_IMAGE_STORAGE=/blah -v /dokku/persistent/storage/pageonex:/blah ....</div><div><br></div><div>I don&#39;t know how pageonex works internally so I don&#39;t know how easy is to fix that. But would the following work?</div><div><br></div><div>docker run -v <span style="background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline"><span> </span>/dokku/persistent/storage/pageonex:/<span style="text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">assets/images/kiosko...</span></span></div><div><span style="background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline"><span style="text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline"><br></span></span></div><div><span style="background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline"><span style="text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">or whatever combination around this? I guess that will depend on where the application writes the assets once is running inside the container...</span></span></div><div><br></div><div>Regards,</div><div><br></div><div>Rafa</div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr">El vie., 6 jul. 2018 a las 18:12, Rahul B (&lt;<a href="mailto:rahulb@media.mit.edu" target="_blank">rahulb@media.mit.edu</a>&gt;) escribió:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi - I have 20 mins now, or in about an hour.  If you are still available you can find me on Skype at civic-rahulb.<div><div><br></div><div>Rahul</div></div></div><br><div class="gmail_quote"><div dir="ltr">On Fri, Jul 6, 2018 at 6:36 AM pablo rey &lt;<a href="mailto:pablo@basurama.org" target="_blank">pablo@basurama.org</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Hey Rahul, Let&#39;s chat when you are available today. Rafa said that he will join. He can better help with the containers and image storage location thing better than me. <br></div><div>Ping me.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On 5 July 2018 at 15:53, Rahul B <span dir="ltr">&lt;<a href="mailto:rahulb@media.mit.edu" target="_blank">rahulb@media.mit.edu</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Yes - you can deploy a Docker image via Dokku (<a href="http://dokku.viewdocs.io/dokku/deployment/methods/dockerfiles/" target="_blank">details</a>).  That said, deploying as a Heroic build pack is a little simpler.<div><br></div><div>Regarding the images, the feature suggestion I made (to specify the storage location via an environment variable), will let us move the image storage to the larger hard drive.  That is precisely the goal.</div><div><br></div><div>If you&#39;d like to chat I have time today or tomorrow morning (Boston time).</div><span class="m_5055844882625841378m_-3164639315888366604m_8530598671384935368m_3465135050873914487HOEnZb"><font color="#888888"><div><br></div><div>Rahul</div></font></span></div><div class="m_5055844882625841378m_-3164639315888366604m_8530598671384935368m_3465135050873914487HOEnZb"><div class="m_5055844882625841378m_-3164639315888366604m_8530598671384935368m_3465135050873914487h5"><br><div class="gmail_quote"><div dir="ltr">On Wed, Jul 4, 2018 at 7:07 AM pablo rey &lt;<a href="mailto:pablo@basurama.org" target="_blank">pablo@basurama.org</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Hey Rafa, that&#39;d be great. Thanks!<br></div><div><br></div><div>Let&#39;s see what Rahul says.<br></div><div>Are Docker and Dokku interchangeable?</div></div><div class="gmail_extra"><br><div class="gmail_quote">On 4 July 2018 at 12:06, Rafael Porres Molina <span dir="ltr">&lt;<a href="mailto:rporres@gmail.com" target="_blank">rporres@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hey Pablo,<div><br></div><div>This next Monday I can have some hours helping you if you need to move the application to Docker. Prior to that, if you want we can set a meeting with Rahul so that the time that I can work on the project is more focused.</div><div><br></div><div>Let me know if this works for you.</div><div><br></div><div>Regards,</div><div><br></div><div>Rafa</div></div><div class="m_5055844882625841378m_-3164639315888366604m_8530598671384935368m_3465135050873914487m_7652722034102659034m_8788940332105168771HOEnZb"><div class="m_5055844882625841378m_-3164639315888366604m_8530598671384935368m_3465135050873914487m_7652722034102659034m_8788940332105168771h5"><br><div class="gmail_quote"><div dir="ltr">El mié., 4 jul. 2018 a las 0:25, pablo rey (&lt;<a href="mailto:pablo@basurama.org" target="_blank">pablo@basurama.org</a>&gt;) escribió:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Hi Rahul,</div><div><br></div><div>Thanks for the good news, happy to continue at civic media servers. <br></div><div><br></div><div>We have modest plans for this round of development, let&#39;s see how we do.</div><div><br></div><div>I am not familiarized with Dokku and containerized, how difficult is to change to that mode of deployment?<br></div><div><br></div><div>Regarding image storage, remember you tried in November&#39;17.  You wrote me off the list &quot;I&#39;m going to copy the giant folder of 
kiosko images to the bigger drive I mentioned again, but this time with a
 flag to maintain all the permissions. Then perhaps we can schedule a 
time where I can flip it to use the larger hard drive and you can make a
 thread and test some old ones to tell me if it works.  If it does, all 
good and I&#39;ll delete the giant folder on the main drive that is running 
low on space.  If it doesn&#39;t work then I can just quickly put it back 
the way it was and think harder about it.&quot; I think that caused <a href="https://github.com/numeroteca/pageonex/issues/203#issuecomment-361261644" target="_blank">some problems of image missing</a>, still unsolved.</div><div><br></div><div>You suggest that Dokku&#39;s persistent storage will enable that change in storage. We&#39;ll need your help to make that shift.<br></div><div><br></div><div>Best,</div><div>pablo<br></div><div><br></div><div> <br></div><div><div class="gmail_extra"><br><div class="gmail_quote">On 3 July 2018 at 15:29, Rahul B <span dir="ltr">&lt;<a href="mailto:rahulb@media.mit.edu" target="_blank">rahulb@media.mit.edu</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hello,<div><br></div><div>Pleasure to meet you Juanjo.  Glad to see some new life breathing into the project.  We host it here and the civic media servers, and I confirmed with Ethan that he is willing to continue to do so. </div><div><br></div><div>* We are using RVM, but are switching to a containerized deployment system soon.  That means it&#39;d be best to think about Heroku-style deployment (like PageOneX originally did).</div><div>* We will be using <a href="http://dokku.viewdocs.io/dokku/" target="_blank">Dokku</a> for containerized deployment to our servers, we you will be able to deploy with a `git push` (once we set keys up). We are migrating our hosted applications to this mode now, so this is super good timing!</div><div>* Image storage is the only complicated thing to think about... right now the `assets/images/kiosko` folder is 115GB (!).  It&#39;d be great if you could prioritize a feature change that lets us specify the root image storage path via a environment variable.  That would allow us to use the <a href="https://github.com/dokku/dokku/blob/master/docs/advanced-usage/persistent-storage.md" target="_blank">Dokku persistent storage path</a> to specify a storage point on our giant 10TB network drive while still supporting containerized deployment, rather than having it fill up our root drive (as it does now)</div><div><br></div><div>Sound good?</div><div><br></div><div>Rahul</div></div><div class="m_5055844882625841378m_-3164639315888366604m_8530598671384935368m_3465135050873914487m_7652722034102659034m_8788940332105168771m_-856341518470904166m_6302559795676021543m_-6623743455414668152m_-319109476949447732gmail-HOEnZb"><div class="m_5055844882625841378m_-3164639315888366604m_8530598671384935368m_3465135050873914487m_7652722034102659034m_8788940332105168771m_-856341518470904166m_6302559795676021543m_-6623743455414668152m_-319109476949447732gmail-h5"><br><div class="gmail_quote"><div dir="ltr">On Tue, Jul 3, 2018 at 4:03 AM pablo rey &lt;<a href="mailto:pablo@basurama.org" target="_blank">pablo@basurama.org</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hey!</div><div><br></div><div>We are back after a long time. We have a few enhancements and things to fix in our road map (<a href="https://github.com/numeroteca/pageonex/projects/1" target="_blank">https://github.com/numeroteca/pageonex/projects/1</a>). they are basic features to extend the use for an easier and deeper analysis (drawn areas would be able to store more data, not only the topic). Juanjo Bazán will be developing in RoR.<br></div><div><br></div><div>Rahul, we have a few doubts to solve regarding deployment process:<br></div><div><ul><li>We are planning to update the ruby version that it&#39;s used. I guess that should be no problem if we are using RVM. Could you confirm?</li><li>Another related question to the gems. Which is the deployment process in dev and production servers? is there an script that executes the bundle/migrations of the database or everything is installed &quot;manually&quot; or  something like capistrano is used?</li></ul><div>Down the road, but not yet in the listed in the project, we are planning to update ruby, gems and bootstrap.<br></div><div><br></div><div>If you want to join, just tell!<br></div><div><br></div><div>Thanks,</div><div>p<div class="m_5055844882625841378m_-3164639315888366604m_8530598671384935368m_3465135050873914487m_7652722034102659034m_8788940332105168771m_-856341518470904166m_6302559795676021543m_-6623743455414668152m_-319109476949447732gmail-m_4562817491643609751m_2935889797349296640gmail-yj6qo m_5055844882625841378m_-3164639315888366604m_8530598671384935368m_3465135050873914487m_7652722034102659034m_8788940332105168771m_-856341518470904166m_6302559795676021543m_-6623743455414668152m_-319109476949447732gmail-m_4562817491643609751m_2935889797349296640gmail-ajU"><div id="m_5055844882625841378m_-3164639315888366604m_8530598671384935368m_3465135050873914487m_7652722034102659034m_8788940332105168771m_-856341518470904166m_6302559795676021543m_-6623743455414668152m_-319109476949447732gmail-m_4562817491643609751m_2935889797349296640gmail-:3e6" class="m_5055844882625841378m_-3164639315888366604m_8530598671384935368m_3465135050873914487m_7652722034102659034m_8788940332105168771m_-856341518470904166m_6302559795676021543m_-6623743455414668152m_-319109476949447732gmail-m_4562817491643609751m_2935889797349296640gmail-ajR"><img class="m_5055844882625841378m_-3164639315888366604m_8530598671384935368m_3465135050873914487m_7652722034102659034m_8788940332105168771m_-856341518470904166m_6302559795676021543m_-6623743455414668152m_-319109476949447732gmail-m_4562817491643609751m_2935889797349296640gmail-ajT" src="https://ssl.gstatic.com/ui/v1/icons/mail/images/cleardot.gif"></div></div></div></div><div><br></div></div>
</blockquote></div></div></div><span class="m_5055844882625841378m_-3164639315888366604m_8530598671384935368m_3465135050873914487m_7652722034102659034m_8788940332105168771m_-856341518470904166m_6302559795676021543m_-6623743455414668152m_-319109476949447732gmail-HOEnZb"><font color="#888888">-- <br><div dir="ltr" class="m_5055844882625841378m_-3164639315888366604m_8530598671384935368m_3465135050873914487m_7652722034102659034m_8788940332105168771m_-856341518470904166m_6302559795676021543m_-6623743455414668152m_-319109476949447732gmail-m_4562817491643609751gmail_signature">------------------------------------------<br>Rahul Bhargava<br><a href="http://rahul.connectionlab.org" target="_blank">http://rahul.connectionlab.org</a><br></div>
</font></span><br>_______________________________________________<br>
Pageonexdev mailing list<br>
<a href="mailto:Pageonexdev@mit.edu" target="_blank">Pageonexdev@mit.edu</a><br>
<a href="http://mailman.mit.edu/mailman/listinfo/pageonexdev" rel="noreferrer" target="_blank">http://mailman.mit.edu/mailman/listinfo/pageonexdev</a><br>
<br></blockquote></div><br></div></div></div>
_______________________________________________<br>
Pageonexdev mailing list<br>
<a href="mailto:Pageonexdev@mit.edu" target="_blank">Pageonexdev@mit.edu</a><br>
<a href="http://mailman.mit.edu/mailman/listinfo/pageonexdev" rel="noreferrer" target="_blank">http://mailman.mit.edu/mailman/listinfo/pageonexdev</a><br>
</blockquote></div>
</div></div><br>_______________________________________________<br>
Pageonexdev mailing list<br>
<a href="mailto:Pageonexdev@mit.edu" target="_blank">Pageonexdev@mit.edu</a><br>
<a href="http://mailman.mit.edu/mailman/listinfo/pageonexdev" rel="noreferrer" target="_blank">http://mailman.mit.edu/mailman/listinfo/pageonexdev</a><br>
<br></blockquote></div><br></div>
_______________________________________________<br>
Pageonexdev mailing list<br>
<a href="mailto:Pageonexdev@mit.edu" target="_blank">Pageonexdev@mit.edu</a><br>
<a href="http://mailman.mit.edu/mailman/listinfo/pageonexdev" rel="noreferrer" target="_blank">http://mailman.mit.edu/mailman/listinfo/pageonexdev</a><br>
</blockquote></div>-- <br><div dir="ltr" class="m_5055844882625841378m_-3164639315888366604m_8530598671384935368m_3465135050873914487m_7652722034102659034gmail_signature" data-smartmail="gmail_signature">------------------------------------------<br>Rahul Bhargava<br><a href="http://rahul.connectionlab.org" target="_blank">http://rahul.connectionlab.org</a><br></div>
</div></div></blockquote></div><br></div>
</blockquote></div>-- <br><div dir="ltr" class="m_5055844882625841378m_-3164639315888366604m_8530598671384935368gmail_signature" data-smartmail="gmail_signature">------------------------------------------<br>Rahul Bhargava<br><a href="http://rahul.connectionlab.org" target="_blank">http://rahul.connectionlab.org</a><br></div>
</blockquote></div>
</blockquote></div></div></div></div>-- <br><div dir="ltr" class="m_5055844882625841378gmail_signature" data-smartmail="gmail_signature">------------------------------------------<br>Rahul Bhargava<br><a href="http://rahul.connectionlab.org" target="_blank">http://rahul.connectionlab.org</a><br></div>
</blockquote></div>