Compose: Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π±Π΅Π· ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ Π² сборку с ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΎΠΉ Π΄ΠΎΠΊΠ΅Ρ€ΠΎΠ².

Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π° 2 ΠΌΠ°Ρ€. 2015  Β·  13ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ  Β·  Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: docker/compose

Π‘Ρ‹Π»ΠΎ Π±Ρ‹ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Ссли Π±Ρ‹ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ ΠΌΠΎΠ³ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это
docker-compose build service1 service2 --no-cache

Π‘Π°ΠΌΡ‹ΠΉ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Волько Ρ‡Ρ‚ΠΎ понял, Ρ‡Ρ‚ΠΎ синтаксис
docker-compose build --no-cache service1 service2

ВсС 13 ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Волько Ρ‡Ρ‚ΠΎ понял, Ρ‡Ρ‚ΠΎ синтаксис
docker-compose build --no-cache service1 service2

Π― искал это !!

Π’ΠΎΡ‚ ΠΌΠΎΠΉ чистый способ ΠΏΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΌΠΎΠΉ стСк ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΉ

cd (ΠΊ Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Ρƒ создания)

 docker-compose rm --all &&
 docker-compose pull &&
 docker-compose build --no-cache &&
 docker-compose up -d --force-recreate &&

Π•ΡΡ‚ΡŒ смысл? Π― ΠΈΡ‰Ρƒ Π»ΡƒΡ‡ΡˆΡƒΡŽ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒ здСсь :)

+1
НуТСн Π»ΠΈ --force-recreate?

+1
Π― Π΄ΡƒΠΌΠ°ΡŽ, Ρ‡Ρ‚ΠΎ --force-recreate β€” Π»ΡƒΡ‡ΡˆΠΈΠΉ Π²Ρ‹Π±ΠΎΡ€

--force-recreate Π½Π΅ Π½ΡƒΠΆΠ΅Π½, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ всС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ Π±Ρ‹Π»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹.

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ _всС_, down Π»ΡƒΡ‡ΡˆΠ΅, Ρ‡Π΅ΠΌ rm , ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ Ρ‚ΠΎΠΌΠ° ΠΈ сСти.

$ docker-compose down -h
Stops containers and removes containers, networks, volumes, and images
created by `up`.

By default, the only things removed are:

- Containers for services defined in the Compose file
- Networks defined in the `networks` section of the Compose file
- The default network, if one is used

Networks and volumes defined as `external` are never removed.

Usage: down [options]

Options:
    --rmi type          Remove images. Type must be one of:
                        'all': Remove all images used by any service.
                        'local': Remove only images that don't have a custom tag
                        set by the `image` field.
    -v, --volumes       Remove named volumes declared in the `volumes` section
                        of the Compose file and anonymous volumes
                        attached to containers.
    --remove-orphans    Remove containers for services not defined in the
                        Compose file

Π― ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ это с 3 мСсяцСв, ΠΈ это Ρ‚Π²Π΅Ρ€Π΄ΠΎ для ΠΌΠΎΠΈΡ… Π½ΡƒΠΆΠ΄.
Π― Π½Π΅ Ρ…ΠΎΡ‡Ρƒ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ: сСти, Ρ‚ΠΎΠΌΠ° ΠΈ ΠΎΠ±Ρ€Π°Π·Ρ‹

        echo && echo "PikWi says: docker-compose stop" && \
    docker-compose stop && \
        echo "PikWi says: docker-compose rm ..." && \
    docker-compose rm -f --all && \    
        echo "PikWi says: docker-compose pull" && \
    docker-compose pull && \
        echo "PikWi says: docker-compose build ..." && \
    docker-compose build --no-cache && \
        echo "PikWi says: docker-compose up ..." && \
    docker-compose up -d --force-recreate --remove-orphans

Π― Π±ΡƒΠ΄Ρƒ Ρ€Π°Π΄ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΊΠΎΡ€ΠΎΡ‡Π΅ ΠΈΠ»ΠΈ Ρ‡ΠΈΡ‰Π΅. Π― всС Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ :)

Π’Π°ΡˆΠ΅ Π·Π΄ΠΎΡ€ΠΎΠ²ΡŒΠ΅!

--no-cache Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.... какая Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π° --force-rebuild ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ кСш :(

@julianfrank НС ΡƒΠ²Π΅Ρ€Π΅Π½, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΈΠΌΠ΅Π»ΠΈ Π² Π²ΠΈΠ΄Ρƒ ΠΏΠΎΠ΄ --no-cache does not work , Π½ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ‹ запускаСтС Π΅Π³ΠΎ ΠΊΠ°ΠΊ
docker-compose build SERVICE_NAME --no-cache
ΠΊΠΎΠ³Π΄Π° Π½Π° самом Π΄Π΅Π»Π΅ это Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ docker-compose build --no-cache SERVICE_NAME ?

Когда шаги ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ для Ρ€Π°Π·Π½Ρ‹Ρ… создаваСмых сСрвисов, ΠΎΠ½ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ кСш ΠΈΠ· ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ созданного Ρ€Π°Π½Π΅Π΅ Π² сцСнарии... Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π° использованию Ρ‚Π΅Ρ… ΠΆΠ΅ шагов, ΠΊΠΎΠ³Π΄Π° я Ρ…ΠΎΡ‡Ρƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ кСш ΠΈ порядок измСнСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ кСш ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅...

Ссли Π²Ρ‹ Π±Ρ‹Π»ΠΈ ΠΎΠ±Π»Π°ΠΆΠ°Π½Ρ‹ кСшСм ΠΈ вмСсто этого, Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ кСш, Π²Ρ‹ вставляСтС Π½ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² Ρ„Π°ΠΉΠ» Π΄ΠΎΠΊΠ΅Ρ€Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ слой кСша, ΠΎΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ ΠΏΠ°Π»Π΅Ρ† Π²Π²Π΅Ρ€Ρ…, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° кСша Π² Π΄ΠΎΠΊΠ΅Ρ€Π΅ нуТдаСтся Π² Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π΅... ΠΈΠ»ΠΈ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, очищая слои кСша

Π”Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚...
Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π½ΠΎΡΠΈΡ‚ΡŒ всС измСнСния Π² Dockerfile для слуТбы, ΠΈ Π½Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… Ρ€Π°Π·ΠΌΡ‹ΡˆΠ»Π΅Π½ΠΈΠΉ ΠΎ docker-compose build --no-cache

docker-compose up -d --build --no-deps web пСрСстроит ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ для слуТбы с ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«webΒ» Π² вашСм Ρ„Π°ΠΉΠ»Π΅ docker-compose.yml. ПослС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ пСрСстроСния ΠΎΠ½ пСрСзапустит ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€.

--no-deps ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ пСрСстроСниС ΠΈΠΌΠ΅Π½Π΅ΠΌ слуТбы, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, эта ΠΊΠΎΠΌΠ°Π½Π΄Π° пСрСстроит ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, Ссли Π²Ρ‹ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Ρ„Π°ΠΉΠ»Ρ‹ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚Π΅, измСнился, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, трСбования.txt

ΠΊ Π²Π°ΡˆΠ΅ΠΌΡƒ свСдСнию
docker-compose up --force-recreate --build

По-Π²ΠΈΠ΄ΠΈΠΌΠΎΠΌΡƒ, для ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ up Π½Π΅Ρ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° --no-cache.
ΠŸΠΎΡ…ΠΎΠΆΠ΅, ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ воссозданиС Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ эту ΠΎΠΏΡ†ΠΈΡŽ. ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, ΠΏΠΎΠΏΡ€Π°Π²ΡŒΡ‚Π΅ мСня, Ссли я ошибаюсь!

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π»ΡƒΡ‡ΡˆΠΈΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠΌ для мСня Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это...

ΠžΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° восстановлСния ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ для мСня

УдаляСт ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ ΠΈ ΠΎΠ±Ρ€Π°Π·Ρ‹ > создаСт ΠΎΠ±Ρ€Π°Π·Ρ‹ Π±Π΅Π· кСша сборки > отсоСдиняСт docker-compose > слСдит Π·Π° ΠΆΡƒΡ€Π½Π°Π»Π°ΠΌΠΈ (Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ctrl+c ΠΈΠ· Π½Π΅Π³ΠΎ)

docker-compose build --force-rm --no-cache && docker-compose up --detach && docker-compose logs -f

Окна:
docker-compose build --force-rm --no-cache ; docker-compose up --detach ; docker-compose logs -f

Π‘Ρ‹Π»Π° Π»ΠΈ эта страница ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ?
0 / 5 - 0 Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ΠΈ