{"id":2039,"date":"2025-05-25T12:00:00","date_gmt":"2025-05-25T10:00:00","guid":{"rendered":"http:\/\/www.daniel.slask.pl\/?p=2039"},"modified":"2025-04-12T21:49:01","modified_gmt":"2025-04-12T19:49:01","slug":"omv-7-kopia-musi-byc-duplicate","status":"publish","type":"post","link":"https:\/\/daniel.slask.pl\/m\/omv-7-kopia-musi-byc-duplicate\/","title":{"rendered":"[OMV #7] Kopia musi by\u0107 &#8211; Duplicate"},"content":{"rendered":"\n<p>Gdy ju\u017c mamy kilka kontener\u00f3w skonfigurowanych i uruchomionych dobrze, jest utworzy\u0107 ich kopi\u0119. W tym celu utworzymy nowy kontener zawieraj\u0105cy Duplicatie &#8211; aplikacj\u0119 wykonuj\u0105ca kopi\u0119 zapasow\u0105 plik\u00f3w\/danych nie tylko samych kontener\u00f3w. <\/p>\n\n\n\n<p>Tak jak to mia\u0142o miejsce w poprzednich kontenerach, r\u00f3wnie\u017c tutaj skorzystamy z pliku YAML:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"yaml\" class=\"language-yaml line-numbers\"> services:\n  duplicati:\n    image: lscr.io\/linuxserver\/duplicati:latest\n    container_name: duplicati\n    environment:\n      - PUID=0\n      - PGID=0\n      - TZ=Europe\/Warsaw\n      - SETTINGS_ENCRYPTION_KEY=kluczSzyfrujacy\n      - DUPLICATI__WEBSERVICE_PASSWORD=HasloDoGUI\n    volumes:\n      - \/Docker\/Dane\/duplicati\/config:\/config #gdzie znajduje si\u0119 konfiguracja\n      - \/srv\/dev-disk-by-uuid-d2c2a32c-ebfd-49f2-b2f6-173423582d31\/backups:\/backups #gdzie maj\u0105 znajdowa\u0107 si\u0119 kopie \n      - \/Docker\/Dane:\/source #odniesienie do danych dockera\n      - \/srv\/dev-disk-by-uuid-579a4ed8-e060-479d-a4c3-2852a835d492:\/source_raid #odniesienie do dysku raid\n    ports:\n      - 8222:8200\n    restart: always<\/code><\/pre>\n\n\n\n<p>Ustaw sw\u00f3j klucz szyfruj\u0105cy, oraz has\u0142o do strony obs\u0142uguj\u0105cej duplicati.<\/p>\n\n\n\n<p>Po wklejeniu i zatwierdzeniu tego kontenera, przechodzimy do strony zgodnie z przypisanym adresem i portem dla naszego serwera i duplicati (w tym przypadku adres.ip:8222).<br>Logujemy si\u0119 poprzez wpisanie has\u0142a kt\u00f3re zosta\u0142o ustawione w bloku <em>DUPLICATI__WEBSERVICE_PASSWORD<\/em>. Po zalogowaniu widzimy po lewej stronie menu w kt\u00f3rym to wybieramy Dodaj kopi\u0119. Wybieramy skonfigurowanie nowej kopii, a w kolejnym okienku wybieramy Spos\u00f3b szyfrowania kopii, oraz wpisujemy nazw\u0119 dla kopii. <\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-5 wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/23.png\"><img loading=\"lazy\" decoding=\"async\" width=\"422\" height=\"177\" data-id=\"2045\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/23.png\" alt=\"\" class=\"wp-image-2045\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/23.png 422w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/23-300x126.png 300w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/23-400x168.png 400w\" sizes=\"(max-width: 422px) 100vw, 422px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/24.png\"><img loading=\"lazy\" decoding=\"async\" width=\"328\" height=\"216\" data-id=\"2046\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/24.png\" alt=\"\" class=\"wp-image-2046\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/24.png 328w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/24-300x198.png 300w\" sizes=\"(max-width: 328px) 100vw, 328px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/25.png\"><img loading=\"lazy\" decoding=\"async\" width=\"235\" height=\"210\" data-id=\"2047\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/25.png\" alt=\"\" class=\"wp-image-2047\"\/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/26.png\"><img loading=\"lazy\" decoding=\"async\" width=\"421\" height=\"148\" data-id=\"2044\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/26.png\" alt=\"\" class=\"wp-image-2044\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/26.png 421w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/26-300x105.png 300w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/26-400x141.png 400w\" sizes=\"(max-width: 421px) 100vw, 421px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/27.png\"><img loading=\"lazy\" decoding=\"async\" width=\"540\" height=\"543\" data-id=\"2048\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/27.png\" alt=\"\" class=\"wp-image-2048\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/27.png 540w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/27-298x300.png 298w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/27-150x150.png 150w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/27-400x402.png 400w\" sizes=\"(max-width: 540px) 100vw, 540px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<p>W drugim kroku wybieramy miejsce gdzie kopia zapasowa ma by\u0107 tworzona &#8211; podczas konfiguracji skryptu Yaml wskazali\u015bmy \u017ce lokalizacja na naszym dysku b\u0119dzie przypisana do folderu backups, wi\u0119c wybieramy ten folder. W tym kroku nie musimy wpisywa\u0107 has\u0142a i nazwy u\u017cytkownika gdy\u017c w tym przypadku nie jest ona potrzebna (kopie robimy lokalnie). Kolejnym krokiem jest wskazanie danych \u017ar\u00f3d\u0142owych &#8211; wskazali\u015bmy \u017ce b\u0119d\u0105 one w folderze source, przechodzimy do tego folderu i wybieramy interesuj\u0105ce nas pliki.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-4 wp-block-gallery-2 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/28.png\"><img loading=\"lazy\" decoding=\"async\" width=\"551\" height=\"713\" data-id=\"2049\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/28.png\" alt=\"\" class=\"wp-image-2049\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/28.png 551w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/28-232x300.png 232w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/28-400x518.png 400w\" sizes=\"(max-width: 551px) 100vw, 551px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/29.png\"><img loading=\"lazy\" decoding=\"async\" width=\"554\" height=\"613\" data-id=\"2050\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/29.png\" alt=\"\" class=\"wp-image-2050\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/29.png 554w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/29-271x300.png 271w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/29-400x443.png 400w\" sizes=\"(max-width: 554px) 100vw, 554px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/30.png\"><img loading=\"lazy\" decoding=\"async\" width=\"542\" height=\"654\" data-id=\"2051\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/30.png\" alt=\"\" class=\"wp-image-2051\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/30.png 542w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/30-249x300.png 249w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/30-400x483.png 400w\" sizes=\"(max-width: 542px) 100vw, 542px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/31.png\"><img loading=\"lazy\" decoding=\"async\" width=\"538\" height=\"582\" data-id=\"2052\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/31.png\" alt=\"\" class=\"wp-image-2052\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/31.png 538w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/31-277x300.png 277w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/31-400x433.png 400w\" sizes=\"(max-width: 538px) 100vw, 538px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<p>Kolejnym krokiem jest ustawienie harmonogramu wykonywania kopii &#8211; w tym przypadku mamy dowolno\u015b\u0107 w tych ustawieniach. Nast\u0119pnie wybieramy ile ma zajmowa\u0107 jeden plik kopii, oraz jaka ma by\u0107 retencja kopii zapasowych &#8211; kr\u00f3tko m\u00f3wi\u0105c z jakiego okresu i w jaki spos\u00f3b maj\u0105 by\u0107 zachowane dane. Do wyboru jest kilka opcji i w zale\u017cno\u015bci od potrzeby mo\u017cna wybra\u0107 albo zachowanie wszystkich kopii, zachowanie kilku ostatnich, albo ustawienie odpowiedniej strategii zachowania kopii (np. 1 kopia z ostatniego tygodnia, 1 kopia z miesi\u0105ca i 1 kopia z ostatniego roku). <\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default wp-block-gallery-3 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-medium\"><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/32.png\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"110\" data-id=\"2053\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/32-300x110.png\" alt=\"\" class=\"wp-image-2053\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/32-300x110.png 300w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/32-400x146.png 400w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/32.png 402w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-medium\"><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/33.png\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"253\" data-id=\"2054\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/33-300x253.png\" alt=\"\" class=\"wp-image-2054\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/33-300x253.png 300w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/33-400x337.png 400w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/33.png 519w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<p>I tak mamy utworzone zadanie zwi\u0105zane z wykonywaniem kopii. Kopi\u0119 mo\u017cemy uruchomi\u0107 teraz, albo poczeka\u0107 do ustawionego terminu wykonania kopii. Opr\u00f3cz wykonywania kopii mo\u017cliwe jest te\u017c jej przywr\u00f3cenie poprzez &#8211; dokonujemy tego poprzez wyb\u00f3r w lewym menu opcji Odtw\u00f3rz i przej\u015bcie procesu podobnego ale odwrotnego jaki by\u0142 przy tworzeniu tej\u017ce kopii.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Gdy ju\u017c mamy kilka kontener\u00f3w skonfigurowanych i uruchomionych dobrze, jest utworzy\u0107 ich kopi\u0119. W tym celu utworzymy nowy kontener zawieraj\u0105cy Duplicatie &#8211; aplikacj\u0119 wykonuj\u0105ca kopi\u0119 zapasow\u0105 plik\u00f3w\/danych nie tylko samych kontener\u00f3w. Tak jak to mia\u0142o miejsce w poprzednich kontenerach, r\u00f3wnie\u017c&#8230;<br \/><a class=\"read-more-button\" href=\"https:\/\/daniel.slask.pl\/m\/omv-7-kopia-musi-byc-duplicate\/\">Wi\u0119cej<\/a><\/p>\n","protected":false},"author":1,"featured_media":2056,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[23,125],"tags":[256,268,65,242,90,267],"views":78,"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2025\/04\/07-OMV.jpg","jetpack_shortlink":"https:\/\/wp.me\/pcPgV3-wT","_links":{"self":[{"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/posts\/2039"}],"collection":[{"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/comments?post=2039"}],"version-history":[{"count":2,"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/posts\/2039\/revisions"}],"predecessor-version":[{"id":2055,"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/posts\/2039\/revisions\/2055"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/media\/2056"}],"wp:attachment":[{"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/media?parent=2039"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/categories?post=2039"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/tags?post=2039"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}