Zdjęcie w tle
nicram

nicram

Specjalista
  • 5wpisy
  • 33komentarzy

https://youtu.be/1jmuDTAjzhM

Takie zapytanie o #hejto. Kiedy klikam Obserwowane to pokazuje mi jakieś przypadkowo dodane rzeczy.
Co zrobić aby wyświetlało tylko treści zawierające tagi, które dodałem do obserwowanych?
W sumie jeszcze dla atencji tagi #pytanie #hejtopytanie
nicram

@moll A to bardzo słabo musze powiedzieć. Dla mnie to był największy plus na wykopie właśnie.

Zaloguj się aby komentować

Tak jak informowałem wcześniej, przygotowałem coś fajnego, czym pragnę się podzielić, z dziedziny #IT (czyli #informatyka czy tam #komputery).
Dzisiejszym tematem jest #Nextcloud czyli darmowy, otwartoźródłowy silnik chmury plikowej, który ma wsparcie dla języka polskiego. Można by powiedzieć, że jest to darmowy odpowiednik usług takich jak OneDrive, Google Drive czy Dropbox. Różnica polega na tym, iż to jest nasz własny serwer plików, prywatny, którego limit przestrzeni jest taki, jak wolna pamięć na dysku.
Strona samego projektu: https://nextcloud.com/
Jak to zwykle w wypadku systemu #Linux bywa, uruchomienie tego na własną rękę (szczególnie za pierwszym razem) może być trudne, dlatego przygotowałem skrypt, działający w systemie #Debian Linux w wersji 11. Upraszcza on prawie do zera operacje, które należy wykonać. Wystarczy mieć gotowy komputer z zainstalowanym systemem (wspomnianym już Debianem 11). Może to być także maszyna wirtualna. W systemie nie musi być wcześniej nic zainstalowane, wykonane (zalecam czysty system). Wystarczy jedna komenda:
sudo sh -c "wget -q https://github.com/nicrame/Linux-Scripts/raw/master/nextcloud-debian-ins.sh && chmod +x nextcloud-debian-ins.sh && ./nextcloud-debian-ins.sh"
Po jej wykonaniu z poziomu terminala (lokalnie czy zdalnie po SSH), zostaną zainstalowane i wstępnie skonfigurowane wszystkie wymagane podprogramy (serwer WWW Apache z PHP, baza danych MariaDB, i inne wymagane elementy jak redis czy ntp). Na koniec wykonywania skrypt poda dane logowania z wygenerowanym losowo hasłem (trzeba je zachować, ponieważ nie jest ono nigdzie zapisywane). No i można korzystać.
Dla bardziej zaawansowanych użytkowników, którzy chcieli by aby ich dysk sieciowy działał także z sieci Internet (i mają już przygotowaną domenę, oraz skonfigurowany router w odpowiedni sposób) można uruchomić instalator z argumentem domeny:
sudo sh -c "wget -q https://github.com/nicrame/Linux-Scripts/raw/master/nextcloud-debian-ins.sh && chmod +x nextcloud-debian-ins.sh && ./nextcloud-debian-ins.sh mojadomena.com"
Dodatkowo zostaną wprowadzone ustawienia umożliwiające użycie domeny.
Sam producent co prawda udostępnia swoje rozwiązanie instalujące Nextcloud w systemie Linux, ale jest ono oparte na Dockerze, a więc dodatkowej warstwie (środowisku) oddzielającej skrypt i wymagane do jego działania programy od głównego systemu. Kosztem tego jest jednak trudność w zarządzaniu wszystkim (np zmiana wybranych elementów w późniejszym czasie) czy też diagnostyka i rozwiązywanie ewentualnych problemów. No i każda dodatkowa warstwa to większe obciążenie dla systemu.
742f062e-c7e5-434a-8659-40a1f85193fe
PanPaweuDrugi

Co do tej sieci, to akurat crashował iptables wtedy, teraz pewnie już nie ma tego problemu, ale niesmak pozostał


Opiszesz coś więcej? Jestem ciekaw co tam się działo.


Wbrew pozorom łatwo sobie wyobrazić jaki plik co robi Miałem na myśli raczej wiedzę co gdzie się znajduje, bez szukania.


Baza danych znajduje się w kontenerze "postgresql", natomiast serwer www w kontenerze "nginx". Jak chcę zobaczyć co jest w środku, to wchodzę na githuba i patrzę w dockerfile z którego kontener jest zbudowany, potem już wiem.


zdarza się że jakiś soft nagle pobiera nowsza wersję jakiejś paczki bazy danych, stara jest wyłączona ale zostaje oczywiście, więc i tak trzeba samemu to wyłapywać i czyścić


Nie, nie zdarza się, dobrze przygotowany kontener z oprogramowaniem nie modyfikuje bibliotek ani plików wykonywalnych w środku. Jeśli chcesz nową wersję softu, zaciągasz obraz z nowego taga, a stare kontenery po prostu w całości usuwasz.


Wolę odschoolowo - każdy serwis w osobnej maszynie (najlepiej hardware a nie VMki)


Twoje prawo. Ja mam tak dobrze przygotowany workflow oparty o kontenery, że nie wyobrażam sobie sposobu wdrażania oprogramowania, który opisałeś. Wydaje mi się niewygodny, oporny w automatyzacji, trudny w zarządzaniu, kompletnie nieskalowalny i nieprzenaszalny, a do tego wszystkiego mało bezpieczny. Chociażby perspektywa konieczności rollbackowania aktualizacji wersji jakiegokolwiek komponentu w Twoim środowisku jest dla mnie niewyobrażalna. Ale co człowiek, to opinia.

Polecam jednak się lepiej z tym zapoznać, to jest zajebista technologia i jak już pokonasz trudności związane z jej stosowaniem, to nie sposób się w niej nie zakochać.

nicram

@PanPaweuDrugi Nie pamiętam kompletnie co to było, w jakich warunkach itp. Parę lat temu już, ale nawet nie pamiętam jakie distro to było. Dawniej głównie OpenBSD używałem, i nawet tam niechcący trafiłem na błąd w pfctl (się crashowało). Mam trochę pecha do przypadkowego trafiania na błędy, głównie wycieki pamięci to moja pasja Natomiast też niezły szok był po przejściu z BSD Na Linuxy (jaki to syf, jakie braki w dokumentacji i ile błędów się znajduje, na szczęście dzisiaj jest już dużo lepiej).


Nie umiem cytować niestety tutaj, odnośnie czytania plików dockera żeby wiedzieć co jest wcześniej, to zdecydowanie zrobić cd /lokalizacja i ls -a

Odnośnie pozostawiania syfu dockerowego, to nie chodziło mi o modyfikacje plików wewnętrznych, ale właśnie pobieranie nowych kontenerów, gdzie same jak napisałeś trzeba usuwać - samodzielnie pozostawione same sobie starsze wersje. Pół biedy kiedy to jest maszyna, do której masz normalnie dostęp - ale są rozwiązania gdzie to nie jest takie proste. Czasami testuje urządzenia (routery czy tam switche), które działają na własnych dystrybucjach i właśnie używają dockera. Często aktualizacje wtedy własnie zostawiają jakieś stare elementy, które spokojnie można by było usunąć, a tak leżą i marnują przestrzeń (najczęściej takie testowe urządzenia presale mają zwykle jakieś spore dyski zamontowane, ale finalne produkty to tam wiadomo, wszystko malutkie).

Rollbacki itp. sprawy załatwiają kopie zapasowe. Zarządzanie też nie problem jeżeli wie się, co chce się zrobić i jak. W dockerze po prostu jest dużo mniej opcji, więc łatwiej to usystematyzować - ale daje to dużo mniejsze pole manewru (np. kontener z apką, która jest skompilowana bez argumentu, który akurat potrzebujesz, możesz wtedy albo samemu budować kontenery, albo szukać i może coś gdzieś się jakoś znajdzie). Wszystko zależy imho od środowiska i potrzeb. Zakochac się raczej w dockerach nie dam rady, za duży syf, no i dodatkowy nakład czasu żeby je ogarniać wolę na inne rzeczy poświęcać Ale fajna w nich jest ta ułuda automatyzacji wszystkiego (aż nie pojawi się jakiś większy problem oczywiście).

PanPaweuDrugi

pobieranie nowych kontenerów, gdzie same jak napisałeś trzeba usuwać - samodzielnie pozostawione same sobie starsze wersje. Pół biedy kiedy to jest maszyna, do której masz normalnie dostęp


@nicram dlatego na urządzeniach innych niż maszyna deweloperska powinno się stosować orkiestratory, takie jak choćby Kubernetes, one to wszystko (i znacznie, znacznie więcej) robią za Ciebie. K8S ma garbage collector, który dba o wywalanie wyłączonych kontenerów i osieroconych obrazów. W przypadku gołego dockera:


docker system prune -af


i po problemie, wszystkie śmieci usunięte, nieużywane obrazy, stare wyłączone kontenery - wszystko leci w niebyt.


Czasami testuje urządzenia (routery czy tam switche), które działają na własnych dystrybucjach i właśnie używają dockera. Często aktualizacje wtedy własnie zostawiają jakieś stare elementy, które spokojnie można by było usunąć, a tak leżą i marnują przestrzeń


Pytanie czemu producent nie wie, że to można czyścić, ale to przecież nie jest wina dockera, bo on ma do tego narzędzia, tylko producenta, który o to nie zadbał. Wystarczy przecież dodać prune do crontaba i po problemie.


Rollbacki itp. sprawy załatwiają kopie zapasowe


No jak masz jedną usługę na maszynę, to kopia zapasowa rzeczywiście załatwi Ci rollback, no chyba że to rollback wersji bazy danych, to wtedy już masz problem, bo chcesz cofnąć wersję serwera, ale zostawić nowe dane. Tylko że często usługa wymaga bardzo mało zasobów i trzymanie się założenia jednej maszyny fizycznej na usługę to wtedy straszne marnowanie zasobów. Ciekaw jestem jakbyś w swoim modelu wdrożył system tworzony w architekturze mikroserwisowej, który ma np. 40 mikroserwisów, z czego każdy zużywa 0,1 CPU i średnio 100 MB RAMu.


kontener z apką, która jest skompilowana bez argumentu, który akurat potrzebujesz, możesz wtedy albo samemu budować kontenery, albo szukać i może coś gdzieś się jakoś znajdzie


Oczywiście, budując środowisko oparte o kontenery, powinieneś sobie zapewnić jakiś system CI/CD, który Ci będzie budował obrazy, których nie ma w publicznych źródłach, inaczej jesteś zdany na dockerhuba albo samodzielne budowanie tego na kompie, a nie po to się wchodzi w takie technologie jak konteneryzacja żeby sobie na głowę sprowadzać manualną pracę w postaci budowania obrazów.


Zakochac się raczej w dockerach nie dam rady, za duży syf


Ja właśnie jestem kompletnie przeciwnego zdania, po obserwowaniu adminów robiących


ssh root@produkcja1

cd /var/produkcyjna-aplikacja

git pull

make build


uważam kontenery za nirwanę porządku i systematyzacji w zarządzaniu środowiskami.


Nie umiem cytować niestety tutaj


Załączam zrzut ekranu

c8b1ea27-da55-429d-858f-d1a695a03858

Zaloguj się aby komentować

Dobry wieczór.
Przyznam się, że rzadko tu zaglądałem, ale po zamianach na konkurencyjnym portalu, no nie ma się co oszukiwać, tutaj jest wygodniej. Zauważyłem też kilka zmian, które oceniam na plus (tj. więcej treści się mieści, nie ma tych rodem z telefonów pozaokrąglanych boxów, których 20% to pusta przestrzeń itp.). Mam jednak pytanie, jak na #hejto zrobić, żeby np. NSFW obrazki domyślnie pokazywało? Ma w ustawieniach aby pokazywał treści, ale nadal w obrazki np. trzeba klikać, a czasami zdarzają się śmieszne rzeczy.
Co dalej, no będę się starał czasem coś wrzucić związanego z tym czym się zajmuje (czyli w zasadzie #IT czy tam #informatyka ), ale pewnie niezbyt często bo zwykle długo mi się schodzi z publikacją różnych rzeczy, ale to nie oznacza że takich nie ma
Dobrze, że hejto wytrzymało próbę czasu, i nadal tu jest by przygarnąć ludzi z roztrzaskanego o ego właścicieli i moderacji portalu #wykop .
nicram

@gacek Dziękuję! Poskutkowało! Myślałem, że to dodaje jakiś "efekt"

Zaloguj się aby komentować

PeBe

o @hejto , jak strasznie by się przydało formatowanie by markdown

Zaloguj się aby komentować