🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.os.linux
Article #906944

Re: Skrypt w rc.local dla Docker Compose

#906944
From: Krystek
Date: Thu, 09 Mar 2023 10:20
85 lines
4930 bytes
W dniu 09.03.2023 o 00:19, Krzysztof Gajdemski pisze:
> Jest Wed, 8 Mar 2023 22:25:11 +0100, Krystek pisze:
>> W dniu 08.03.2023 o 15:43, Krzysztof Gajdemski pisze:
>>>> Chciałbym zautomatyzować ten proces przy uruchamianiu systemu i zacząłem
>>>> szukać jak to zrobić, bo w tematach Linuksowych nie jestem jakimś
>>>> ekspertem. Udało mi się wyGoogle'ać, że do tego celu nadawałoby się
>>>> stworzenie pliku rc.local w folderze /etc i tam wpisanie komendy
>>>> uruchomieniowej.
>>>> Do pliku rc.local wpisałem następujce rzeczy:
>>> [ … ]
>> Dziękuję za rozjaśnienie tematu plików konfiguracyjnych kontenerów
>> Dockera. Chyba będę musiał w nich jednak pogrzebać. A tak swoją drogą to
>> dokształcam się w temacie bezpiecznego zatrzymywania działania
>> kontenerów Dockera ;) -
>> <https://www.reddit.com/r/docker/comments/rxe53s/newbie_question_will_dockercontainer_be/>
>>
> 
> Cóż, też nie ma co przesadzać. Są aplikacje wyjątkowo czułe na takie
> akcje, ale to margines. Dobrze jest dążyć do tego, żeby kontenery – jak
> każda inna usługa w systemie – bezpiecznie zamykały się przy restarcie
> i same podnosiły się przy starcie maszyny. Zwróć jeszcze uwagę, że
> robiąc docker-compose down (tak chyba robiłeś przed restartem serwera)
> nie stopujesz kontenerów, lecz je usuwasz. Wtedy docker-compose up -d
> stawia je na nowo.

OK. Czyli tak naprawdę to osoba, która stawiała te kontenery dla 
Mattermosta powinna mi przesłać komendę, która zawiera słowo "stop" - 
<https://docs.docker.com/engine/reference/commandline/compose_stop/>, a 
nie "down"? I zamiast "up", powinno być "start"?

Tak: docker compose -f docker-compose.yml -f docker-compose.nginx.yml 
start --detach

>> A wracając do pytania  to już technikalia dla obeznanych z Linuksem, czy
>> skrypt zadziała -
>> #!/bin/bash
>> /opt/mattermost/docker/sudo docker compose -f docker-compose.yml -f
>> docker-compose.nginx.yml up --detach
> 
> Pliki .yml są w katalogu /opt/mattermost/docker/, czy
> /opt/mattermost/docker/sudo? Obstawiam to pierwsze.

A, jasne. Żeby nie potraktował słowa sudo jako folderu ze ścieżki.

>> Czy może powinienem wywalić ścieżkę /opt/mattermost/docker/ i zostawić
>> samo polecenie?
>
> Skrypt rc.* będzie wywoływany jako root, więc sudo jest zbędne. Bash to
> także overkill, wystarczy sh. Więc może coś takiego:
>
> #v+
> #!/bin/sh
> docker-compose -f /opt/mattermost/docker/docker-compose.yml \
>    -f /opt/mattermost/docker/docker-compose.nginx.yml up -d
> #v-
> 
> Jeśli to nowy Docker to zamiast „docker-compose” będzie „docker
> compose”. Piszesz dwojako, więc ciężko stwierdzić.

Yyy. "Minusy" są tylko w nazwach plików z .yml: docker-compose.yml oraz 
docker-compose.nginx.yml

Tam jest nowa wersja Dockera, bo nie działa np. skrót -d w komendach, a 
działa --detach.

>> Zgodnie z sugestią w przypadku Dockera odpuszczę zabawę
>> z rc.local,
> 
> Nie przekonałeś mnie. :) Licz się z tym, że w miarę nowym Debianie
> rc.local i tak może się nie wykonać, jeśli nie uaktywnisz najpierw
> usługi rc-local.service… W Linuksie niemal zawsze jest lepsza metoda na
> uruchomienie usługi, niż korzystanie z rc.local. Naprawdę odradzam.
> 
>> ale zależy mi na znajomości poprawnej składni (czy ze
>> ścieżką folderu i komendą z sudo zadziała, czy ścieżkę folderu wywalać).
> 
> Jak wspomniałem sudo jest zbędne, bo polecenie będzie wykonywane
> z uprawnieniami roota.

No tak. sudo to z rozpędu :)

K.

-- 
Adresy e-mail w domenie art.pl, jak i sama domena nie są już aktywne
Technical Details
Message-ID: <6409b306$0$19604$65785112@news.neostrada.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.samoylyk.net!news.uzoreto.com!peer03.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-02.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
References: <64089881$0$19612$65785112@news.neostrada.pl> <slrnu0h7ob.30a55.songo-u@fugazi.debian.org.pl> <6408fd36$0$9599$65785112@news.neostrada.pl> <slrnu0i60h.30i4c.songo-u@fugazi.debian.org.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.samoylyk.net!news.uzoreto.com!peer03.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-02.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
Date: Thu, 9 Mar 2023 11:20:55 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0
Reply-To: usenet@krystek.art.pl
Subject: Re: Skrypt w rc.local dla Docker Compose
Newsgroups: pl.comp.os.linux
References: <64089881$0$19612$65785112@news.neostrada.pl> <slrnu0h7ob.30a55.songo-u@fugazi.debian.org.pl> <6408fd36$0$9599$65785112@news.neostrada.pl> <slrnu0i60h.30i4c.songo-u@fugazi.debian.org.pl>
From: Krystek <spamtrap@krystek.art.pl>
Organization: krystek.art.pl
In-Reply-To: <slrnu0i60h.30i4c.songo-u@fugazi.debian.org.pl>
Lines: 86
Message-ID: <6409b306$0$19604$65785112@news.neostrada.pl>
NNTP-Posting-Host: 82.139.161.130
X-Trace: 1678357254 unt-rea-a-02.news.neostrada.pl 19604 82.139.161.130:51104
X-Complaints-To: abuse@news.neostrada.pl
X-Received-Bytes: 4791
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit