Jeżli zawartość różni się u kogoś od tego co pokazuje Jakub i wygląda tak: - /blob - index.json - manifest.json - oci-layout - repositories To znaczy, że (docker save) zapisał obraz z layoutem OCI, u mnie właśnie tak było, mam wersje v26 (orbstack)(macos) Można taki obraz przekonwertować na format Docker v2 aby struktura była tak jak na filmiku. Do tego można użyć (skopeo)
@tharnendil3 ай бұрын
Świetny materiał! Bardzo ci dziękuję 😊
@PiotrWas4 ай бұрын
Dzięki za film
@uwteamorg4 ай бұрын
Jeśli masz pytania do tego, co pokazałem, to zadaj je w komentarzach ⬇
@grzesiekb91424 ай бұрын
Nie no spoko. Uruchomiłem amatorsko kilka kontenerów, ale dla mnie mówisz w obcym języku :) Braki w linuxie mam ogromne :) I tak lubię Cię słuchać (nawet jeśli niewiele rozumiem) :D
@jullien1914 ай бұрын
A jak debugować flatpaka?
@piotr7804 ай бұрын
docker logs -t też da czas a LogPath z inspect bywa pusta jak coś jest nie tak :]
@xawerionify4 ай бұрын
Można do tego dojść w inny sposób: mkdir kontener cd kontener id=$(docker create unknow/wywrotka:latest) docker export $id -o contener.tar tar xf contener.tar
@uwteamorg4 ай бұрын
O! Też ciekawe rozwiązanie - utworzenie kontenera bez uruchamiania go (więc skrypt nie zrobi samozniszczenia) 🙂👍
@@uwteamorg wiem że przejęzyczenie bo z dalszej części wynika, że wiesz o czym mówisz ;) Natomiast ponieważ jest to kluczowy aspekt dla zrozumienia idea rozwiązania to pozwoliłem sobie sprostować. Uwaga poboczna jest taka, że wiem że to tylko szybki dzesiecio minutowy filmik i nie jest to kurs dockera, ale mam wrażenie, że filmik miałby większą wartość edukacyjną jakbyś w miejscu gdzie się przejęzyczasz wyjaśnił chociaż pobieżnie ten niuans.
@wojtek-g14 ай бұрын
Jest tez takie sprytne narzedzie wagoodman/dive, ktore pozwala na przegladanie warstw obrazkow, tez bardzo pomocne przy debugowaniu
@patryk48154 ай бұрын
@@wojtek-g1 wiesz lepiej pokazać losowe brutowanie binarek /bin/bash itp
@maciekglowka6564 ай бұрын
W kontenerze jest grep dostępny, także nawet nie trzeba busy boxa używać.
@uwteamorg4 ай бұрын
To zadanie można na wiele sposobów wykonać. Używając grepa, dd, gzip, base64, sed itp. To jest Linux - jedno zadanie można wykonać na wiele sposobów :)
@nadfioletowy7594 ай бұрын
Skrypt w kontenerze niepoprawnie rozpoznaje typ danych wejściowych typu 'string' i wyświetla poprawną odpowiedź. Powinno być if ! [$a -eq $b];
@aaqu22324 ай бұрын
tak to jest z odziedziczonymi kontenerami
@xawerionify4 ай бұрын
Nie wiem co w tym filmie jest po 0:53:00 ale wystarczy odpalić cd /tmp echo "version=6" > config docker run -v /tmp/config:/app/config:ro -it unknow/wywrotka:latest
@arekx4 ай бұрын
Nie zadziała przy dockerze z snapa.
@StraightBar4 ай бұрын
Debugowanie w 10 minut... dla zaawansowanych 😅
@uwteamorg4 ай бұрын
Nie chciałem takich absolutnych podstaw pokazywać, więc skupiłem się na lekkim kombinowaniu :)
@StraightBar4 ай бұрын
@@uwteamorg nie no spoko generalnie, ale poziom widać, że jest zdecydowanie wyższy niż podstawowy. Coś ogarniam, na tyle żeby postawić i skonfigurować swoje instancje dociera, ale tutaj było kilka poziomów, wyżej, ale.to nie znaczy, ze to jest złe, może nawet dobre, powinno motywować 🤝
@lukcicPL4 ай бұрын
@StraightBar to jest jedna z najlepszych form tutoriali, podstawy sobie wszędzie wyguglujesz albo zapytasz Czata GPT, tutaj masz całkiem realny przypadek, gdzie ktoś coś wyrzeźbił, a Ty musisz się wspiąć na wyżyny kreatywności, żeby zrozumieć co tam się odwala i to naprawić. Przez kilka lat pracy niejednokrotnie miałem takie przypadki, bo prowizorka przecież żyje najdłużej 😅
@piotr7804 ай бұрын
wydaje mi się, że są to podstawy - zostały użyte podstawowe polecenie dockerowe oraz podstawowa wiedza obrazach i kontenerach - że trzeba entrypoint czasami zmieniać, wolumeny instalować, że nie ma czasami powstawowych cli, że istnieje busybox, że można użyć cp, export oraz save żeby pogrzebać w środku
@piotr7804 ай бұрын
nie chcę psuć biznesu, ale w Docker Desktop za 5$/mc jest dostęp do docker debug który montuje shell w każdym kontenerze
@uwteamorg4 ай бұрын
1) na zdalnych serwerach debugując cudze aplikacja najczęściej nie masz dostępu do Docker Desktop 2) uczenie ludzi wielu różnych sposobów na wykonanie jednej akcji nie jest złe. Twój sposób za $5 jest OK, a mój za $0 też jest OK.
@mariuszdrabik71194 ай бұрын
sleep infinity ;-)
@patryk48154 ай бұрын
Lepiej sobie podmontować własnego "busyboxa" przy docker run przez "-v" i sobie go odpalić tak jak chcesz. Lepsze niż kombinowanie jak na filmie. Film powinien pokazywać jak debugować namespace na linuxie - a nie komend dockera
@uwteamorg4 ай бұрын
metod na wykonanie jednej akcji na Linuksie przeważnie jest kilka/kilkanaście. Film pokazuje dokładnie to, co chciałem aby pokazał.
@FastKonrad4 ай бұрын
tu właśnie chodzi o kombinowanie :P chodzi o poszerzanie horyzontów, a niekoniecznie prostą drogę do celu
@mateuszcichocki17794 ай бұрын
@@uwteamorg kilka lat już siedzę w Linuxie, ale akurat z busybox pierwszy raz się spotkałem i powiem że aż się uśmiechąłem pod nosem jakie to jest proste i zaje*iste :) dzięki Unknow.
@piotr7804 ай бұрын
@@mateuszcichocki1779 w alpine to jest, pewnie na wypadek gdyby usunięto sh, a alpine to częsty os w dockerach
@v1r00s4 ай бұрын
@@piotr780 Nie na wypadek gdyby usunięto tylko zamiast (a właściwie "w"): podman run -it --rm alpine / # ls -lah /bin/sh lrwxrwxrwx 1 root root 12 Jul 22 14:36 /bin/sh -> /bin/busybox Busy box jest popularny w rozwiązaniach wbudowanych np openwrt. Fragment z wiki openwrt: "BusyBox is used for several system utilities in OpenWrt like ash shell, cp, ls, echo, ping and many others. It provides tiny replacements with fewer options for most of the utilities from GNU Core Utilities, GNU Inetutils and other essential tools like gzip. All this utilities are compiled as “applets” into a single binary file /bin/busybox."