Re: [Rails] path to images on another app

2017-08-16 Thread fugee ohu


On Friday, August 11, 2017 at 8:10:38 AM UTC-4, Walter Lee Davis wrote:
>
>
> > On Aug 11, 2017, at 2:34 AM, Colin Law  
> wrote: 
> > 
> > On 10 August 2017 at 13:36, fugee ohu  
> wrote: 
> >> 
> >> 
> >> On Thursday, August 10, 2017 at 3:01:06 AM UTC-4, Colin Law wrote: 
> >>> 
> >>> On 10 August 2017 at 07:50, fugee ohu  wrote: 
>  One of my apps drives the others and stores pictures that the others 
> use 
>  Both apps are on the same server How do i build a link to the image 
> on 
>  the 
>  other app? 
> >>> 
> >>> You could use image_tag possibly. 
> >>> 
> >>> Colin 
> >> 
> >> 
> >> how do i get above / ? 
> > 
> > Good point, you will have to arrange the upload to save to a location 
> > visible to both servers, or accessible via another server, and do the 
> > download link manually. 
> > 
> > Colin 
>
> There's many ways to get this to work, and depending on how your server(s) 
> is/are architected, some are more elegant than others. 
>
> In one application I built, there are three separate VPS hosts: database, 
> admin, and public. Admin and public have the same NFS share mounted to each 
> of them, with admin able to write to it, and public only able to read from 
> it. The NFS share is defined in my file upload gem (Dragonfly) as the place 
> where files are written. Dragonfly is somewhat unique in how it manages 
> files (everything is proxied through a Rack app, never hosted directly 
> through Apache/Nginx) so this means I don't have to have that NFS directory 
> in the app's public/system/whatever path. But even if I wanted to allow 
> direct httpd hosting of uploaded images, I could do that through the Apache 
> configuration file, by aliasing a folder from /mount/nfs/share/whatever 
> into public/system/images, for example. 
> https://httpd.apache.org/docs/2.4/urlmapping.html#outside 
>
> So that's an extreme example, brought about by having these apps on 
> different (quasi-physical) servers. If you were hosting them on different 
> virtual hosts on the same server (real or virtual), then your task is a lot 
> simpler. Forget about the NFS mounts, and just configure your Web server to 
> include the same directory, as above, and ensure that only one app is 
> writing into that folder, and both are sharing a single database, so that 
> the apps don't get confused. 
>
> And I've completely overlooked S3 (or any of its various clones), which is 
> sort of a giant share-point in the sky. If you use Fog or another cloud 
> storage adapter, you can treat S3 as you would a local folder, and two or 
> more servers can be configured to use the same S3 "bucket" at the same 
> time. With UUID primary keys, you don't even need to coordinate the 
> databases. 
>
> As far as building a link goes, my apps assume that only one app is doing 
> the writing, and the other one is read-only, so they share a database. 
> Building a link is in the normal Rails manner, based on an ID. But if you 
> had two independent apps that didn't share anything, you would need to 
> build a bridge between them. One could advertise the images it has 
> available through an API, and the other could use that API to periodically 
> update a local cache of what images are available, for example, and what 
> their addresses are, and use those directly. You would build an image tag 
> with the src set to //other.host.dom/path/to/image.jpg rather than 
> pretending it was on your local server. 
>
> In the end, your solution will depend entirely on what your needs are. In 
> my example above, I needed to support a team of editors, who could write 
> things and add metadata to them and approve them, and a largish audience 
> who were read-only on the things that were complete and "published". You 
> might get some more focused solutions for your problem if you can 
> articulate why you have separated these concerns. 
>
> Walter 
>
 
 Different virtual hosts on the same server I need to symlink or set 
something in nginx.conf?

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/7a0aa835-14ba-465b-aa53-b2f8fb60d906%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Rails] path to images on another app

2017-08-11 Thread fugee ohu


On Friday, August 11, 2017 at 8:10:38 AM UTC-4, Walter Lee Davis wrote:
>
>
> > On Aug 11, 2017, at 2:34 AM, Colin Law  
> wrote: 
> > 
> > On 10 August 2017 at 13:36, fugee ohu  
> wrote: 
> >> 
> >> 
> >> On Thursday, August 10, 2017 at 3:01:06 AM UTC-4, Colin Law wrote: 
> >>> 
> >>> On 10 August 2017 at 07:50, fugee ohu  wrote: 
>  One of my apps drives the others and stores pictures that the others 
> use 
>  Both apps are on the same server How do i build a link to the image 
> on 
>  the 
>  other app? 
> >>> 
> >>> You could use image_tag possibly. 
> >>> 
> >>> Colin 
> >> 
> >> 
> >> how do i get above / ? 
> > 
> > Good point, you will have to arrange the upload to save to a location 
> > visible to both servers, or accessible via another server, and do the 
> > download link manually. 
> > 
> > Colin 
>
> There's many ways to get this to work, and depending on how your server(s) 
> is/are architected, some are more elegant than others. 
>
> In one application I built, there are three separate VPS hosts: database, 
> admin, and public. Admin and public have the same NFS share mounted to each 
> of them, with admin able to write to it, and public only able to read from 
> it. The NFS share is defined in my file upload gem (Dragonfly) as the place 
> where files are written. Dragonfly is somewhat unique in how it manages 
> files (everything is proxied through a Rack app, never hosted directly 
> through Apache/Nginx) so this means I don't have to have that NFS directory 
> in the app's public/system/whatever path. But even if I wanted to allow 
> direct httpd hosting of uploaded images, I could do that through the Apache 
> configuration file, by aliasing a folder from /mount/nfs/share/whatever 
> into public/system/images, for example. 
> https://httpd.apache.org/docs/2.4/urlmapping.html#outside 
>
> So that's an extreme example, brought about by having these apps on 
> different (quasi-physical) servers. If you were hosting them on different 
> virtual hosts on the same server (real or virtual), then your task is a lot 
> simpler. Forget about the NFS mounts, and just configure your Web server to 
> include the same directory, as above, and ensure that only one app is 
> writing into that folder, and both are sharing a single database, so that 
> the apps don't get confused. 
>
> And I've completely overlooked S3 (or any of its various clones), which is 
> sort of a giant share-point in the sky. If you use Fog or another cloud 
> storage adapter, you can treat S3 as you would a local folder, and two or 
> more servers can be configured to use the same S3 "bucket" at the same 
> time. With UUID primary keys, you don't even need to coordinate the 
> databases. 
>
> As far as building a link goes, my apps assume that only one app is doing 
> the writing, and the other one is read-only, so they share a database. 
> Building a link is in the normal Rails manner, based on an ID. But if you 
> had two independent apps that didn't share anything, you would need to 
> build a bridge between them. One could advertise the images it has 
> available through an API, and the other could use that API to periodically 
> update a local cache of what images are available, for example, and what 
> their addresses are, and use those directly. You would build an image tag 
> with the src set to //other.host.dom/path/to/image.jpg rather than 
> pretending it was on your local server. 
>
> In the end, your solution will depend entirely on what your needs are. In 
> my example above, I needed to support a team of editors, who could write 
> things and add metadata to them and approve them, and a largish audience 
> who were read-only on the things that were complete and "published". You 
> might get some more focused solutions for your problem if you can 
> articulate why you have separated these concerns. 
>
> Walter 
>
>
Thank you 

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/5174d55c-2a92-4193-bb6a-385bb0f5519c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Rails] path to images on another app

2017-08-11 Thread fugee ohu


On Friday, August 11, 2017 at 2:35:10 AM UTC-4, Colin Law wrote:
>
> On 10 August 2017 at 13:36, fugee ohu  
> wrote: 
> > 
> > 
> > On Thursday, August 10, 2017 at 3:01:06 AM UTC-4, Colin Law wrote: 
> >> 
> >> On 10 August 2017 at 07:50, fugee ohu  wrote: 
> >> > One of my apps drives the others and stores pictures that the others 
> use 
> >> > Both apps are on the same server How do i build a link to the image 
> on 
> >> > the 
> >> > other app? 
> >> 
> >> You could use image_tag possibly. 
> >> 
> >> Colin 
> > 
> > 
> > how do i get above / ? 
>
> Good point, you will have to arrange the upload to save to a location 
> visible to both servers, or accessible via another server, and do the 
> download link manually. 
>
> Colin 
>

Thank you 

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/0682fa00-0833-42ac-8313-4c73517feb8e%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Rails] path to images on another app

2017-08-11 Thread Walter Lee Davis

> On Aug 11, 2017, at 2:34 AM, Colin Law  wrote:
> 
> On 10 August 2017 at 13:36, fugee ohu  wrote:
>> 
>> 
>> On Thursday, August 10, 2017 at 3:01:06 AM UTC-4, Colin Law wrote:
>>> 
>>> On 10 August 2017 at 07:50, fugee ohu  wrote:
 One of my apps drives the others and stores pictures that the others use
 Both apps are on the same server How do i build a link to the image on
 the
 other app?
>>> 
>>> You could use image_tag possibly.
>>> 
>>> Colin
>> 
>> 
>> how do i get above / ?
> 
> Good point, you will have to arrange the upload to save to a location
> visible to both servers, or accessible via another server, and do the
> download link manually.
> 
> Colin

There's many ways to get this to work, and depending on how your server(s) 
is/are architected, some are more elegant than others.

In one application I built, there are three separate VPS hosts: database, 
admin, and public. Admin and public have the same NFS share mounted to each of 
them, with admin able to write to it, and public only able to read from it. The 
NFS share is defined in my file upload gem (Dragonfly) as the place where files 
are written. Dragonfly is somewhat unique in how it manages files (everything 
is proxied through a Rack app, never hosted directly through Apache/Nginx) so 
this means I don't have to have that NFS directory in the app's 
public/system/whatever path. But even if I wanted to allow direct httpd hosting 
of uploaded images, I could do that through the Apache configuration file, by 
aliasing a folder from /mount/nfs/share/whatever into public/system/images, for 
example. https://httpd.apache.org/docs/2.4/urlmapping.html#outside

So that's an extreme example, brought about by having these apps on different 
(quasi-physical) servers. If you were hosting them on different virtual hosts 
on the same server (real or virtual), then your task is a lot simpler. Forget 
about the NFS mounts, and just configure your Web server to include the same 
directory, as above, and ensure that only one app is writing into that folder, 
and both are sharing a single database, so that the apps don't get confused.

And I've completely overlooked S3 (or any of its various clones), which is sort 
of a giant share-point in the sky. If you use Fog or another cloud storage 
adapter, you can treat S3 as you would a local folder, and two or more servers 
can be configured to use the same S3 "bucket" at the same time. With UUID 
primary keys, you don't even need to coordinate the databases.

As far as building a link goes, my apps assume that only one app is doing the 
writing, and the other one is read-only, so they share a database. Building a 
link is in the normal Rails manner, based on an ID. But if you had two 
independent apps that didn't share anything, you would need to build a bridge 
between them. One could advertise the images it has available through an API, 
and the other could use that API to periodically update a local cache of what 
images are available, for example, and what their addresses are, and use those 
directly. You would build an image tag with the src set to 
//other.host.dom/path/to/image.jpg rather than pretending it was on your local 
server.

In the end, your solution will depend entirely on what your needs are. In my 
example above, I needed to support a team of editors, who could write things 
and add metadata to them and approve them, and a largish audience who were 
read-only on the things that were complete and "published". You might get some 
more focused solutions for your problem if you can articulate why you have 
separated these concerns.

Walter

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/4351B338-862E-48A8-A95D-ADC061730E03%40wdstudio.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Rails] path to images on another app

2017-08-11 Thread Colin Law
On 10 August 2017 at 13:36, fugee ohu  wrote:
>
>
> On Thursday, August 10, 2017 at 3:01:06 AM UTC-4, Colin Law wrote:
>>
>> On 10 August 2017 at 07:50, fugee ohu  wrote:
>> > One of my apps drives the others and stores pictures that the others use
>> > Both apps are on the same server How do i build a link to the image on
>> > the
>> > other app?
>>
>> You could use image_tag possibly.
>>
>> Colin
>
>
> how do i get above / ?

Good point, you will have to arrange the upload to save to a location
visible to both servers, or accessible via another server, and do the
download link manually.

Colin

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/CAL%3D0gLtYDexSuYV3YF1Vfaq8PZdT0P2XpJg8da-cHWty-6wy6A%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Rails] path to images on another app

2017-08-10 Thread fugee ohu


On Thursday, August 10, 2017 at 3:01:06 AM UTC-4, Colin Law wrote:
>
> On 10 August 2017 at 07:50, fugee ohu  
> wrote: 
> > One of my apps drives the others and stores pictures that the others use 
> > Both apps are on the same server How do i build a link to the image on 
> the 
> > other app? 
>
> You could use image_tag possibly. 
>
> Colin 
>

how do i get above / ? 

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/571e0067-4829-46ee-83bd-8d5b2d21e97f%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Rails] path to images on another app

2017-08-10 Thread Colin Law
On 10 August 2017 at 07:50, fugee ohu  wrote:
> One of my apps drives the others and stores pictures that the others use
> Both apps are on the same server How do i build a link to the image on the
> other app?

You could use image_tag possibly.

Colin

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/CAL%3D0gLuJyx9ercyVuWMuF6g0uSODzQkUPQmyz4H0fQGGYyGu3w%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


[Rails] path to images on another app

2017-08-10 Thread fugee ohu
One of my apps drives the others and stores pictures that the others use 
Both apps are on the same server How do i build a link to the image on the 
other app?

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/b75d3393-f0da-47f2-a6dd-28d315a2495b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.