2010-07-20 26 views
9

Więc chciałbym spróbować użyć Heroku, aby być moim serwerem, jednak heroku nie pozwala na zapisywanie do swojego systemu plików. Zamiast tego muszę użyć bazy danych i czegoś podobnego do Amazon S3 do przechowywania rzeczy takich jak przesłane obrazy.Offline Amazon S3

Problem polega na tym, że często nie mam dostępu do internetu podczas opracowywania. Lub bardzo słaby dostęp do Internetu. Opracowanie dla Amazon S3 jest niepraktyczne. Czy jest dostępna wersja offline, aby mój lokalny komputer mógł działać jako chmura S3, a kiedy w środowiskach testowych/produkcyjnych mogę używać prawdziwego S3?

+0

Czy to możliwe, aby zamontować drugi system plików, czy ruch sieciowy jedyną rzeczą, która jest dostępna dla Ciebie? –

+0

Mogę zamontować wszystko, co chcę (z systemem Linux), ale mogę nie mieć dostępu do sieci. Ostatecznie chcę korzystać z API do rozwijania, ale robię to całkowicie offline. –

+0

Co ciekawe, to pytanie z 2010 r. Zostało zamknięte w październiku 2012 r., Podczas gdy [to z lutego 2012 r., Które je duplikuje] (http://stackoverflow.com/q/9210162/759866) jest nadal otwarte. – Benjamin

Odpowiedz

1

Moja rekomendacja to wypróbowanie s3fs z rsync. Oto jak to działa:

  1. montażu napędu s3 do/mnt/sdaX/na maszynie produkcyjnej i/mnt/sday/na lokalnym komputerze.
  2. Utwórz system plików w/mnt/sdaX/na komputerze lokalnym.

Wprowadź zmiany na lokalnym komputerze, w razie potrzeby. W razie potrzeby, na stronie internetowej/mnt/sdaX/to/mnt/sdaY/w lokalnym polu.

Zdaję sobie sprawę, że jest to skomplikowane, ale nie jestem pewien, czy jest naprawdę jakikolwiek inny sposób na zrobienie tego przy zachowaniu tej samej konfiguracji w obu miejscach. Normalnie powiedziałbym, że powinieneś po prostu napisać na dysk s3fs lokalnie z włączonym lokalnym buforowaniem, ale nie jestem pewien, co stanie się po powrocie online (jestem prawie pewien, że nie synchronizuje się, ale poszedłem naprzód i asked s3fs developers).

Best,

Zach

Developer LongTail Wideo

+1

Myślę, że jest to raczej interfejs, który jest potrzebny do rozwoju niż do przechowywania samo. Tak więc synchronizacja systemów plików nie pomoże w rozwijaniu się z interfejsem API S3 w trybie offline. –

+0

Muszę rozwijać w trybie offline. Chcę, aby moja produkcja działała online.Chodzi o to, że chcę rozwijać/testować na tych samych API, z których korzysta produkcja, z wyjątkiem tego, że używa się S3, który używa języka lokalnego. Gdybym rozwijał się na urządzeniu dostępnym S3 24/7, nie przejmowałbym się tym problemem, więc nie ma nic wspólnego z samą synchronizacją. –

+0

W tym przypadku system plików * jest * twoim interfejsem. Zamiast używać API specyficznego dla S3, możesz po prostu użyć normalnego API systemu plików, a s3fs usunie resztę. –

1

Zapraszamy do obejrzenia:

Jednak może być trochę pracy, aby je uruchomić. W końcu chciałem napisać własny klon używając node.js, ale odszedł on daleko od oryginalnego API S3, więc to już nie pomoże.

+0

Nie interesuje mnie API S3 tak bardzo, jak jestem zainteresowany posiadaniem ram, które będą wykorzystywać S3 w produkcji i pozwolą mi zrobić coś offline podczas rozwoju. Dzięki, że to zbadam. Link do twojego projektu? –

9

Stare pytanie, ale chciałem to opublikować, istnieje narzędzie "Fałszywe S3", które wydaje się być zaprojektowane do tego właśnie. Właśnie ma zamiar dać mu wir.

https://github.com/jubos/fake-s3