Size: a a a

Docker — русскоговорящее сообщество

2020 February 05

h

hostmit in Docker — русскоговорящее сообщество
А можно как-то выполнить сборку —no-cache после нужного мне ран
источник

h

hostmit in Docker — русскоговорящее сообщество
а можно. делаем RUN touch aaaa
источник

А

Александр in Docker — русскоговорящее сообщество
всем добрый день! подскажите пожалуйста в чем может быть причина? Без docker compose запускаю контейнер с базой - все работает... пробую через docker compose - контейнер отключается сразу после запуска
вот вариант без compose, 2 команды:

docker run -d --network=bridge --name postgresdb -v "$PWD"/src/main/resources/static/db:/opt/myscript -v /home/repository/postgresdata:/var/lib/postgresql/data -e POSTGRES_PASSWORD=password -e POSTGRES_USER=user postgres:10-alpine

docker exec -it postgresdb psql -U user -f /opt/myscript/init.sql

а вот как я это описал в compose

postgresdb:
   container_name: postgresdb
   image: postgres:10-alpine
   restart: "no"
   volumes:
     - ./src/main/resources/static/db:/opt/myscript
     - /home/repository/postgresdata:/var/lib/postgresql/data
   environment:
     - POSTGRES_PASSWORD=password
     - POSTGRES_USER=user
   command: psql -U user -f /opt/myscript/init.sql


запускаю docker-compose up
источник

GG

George Gaál in Docker — русскоговорящее сообщество
Александр
всем добрый день! подскажите пожалуйста в чем может быть причина? Без docker compose запускаю контейнер с базой - все работает... пробую через docker compose - контейнер отключается сразу после запуска
вот вариант без compose, 2 команды:

docker run -d --network=bridge --name postgresdb -v "$PWD"/src/main/resources/static/db:/opt/myscript -v /home/repository/postgresdata:/var/lib/postgresql/data -e POSTGRES_PASSWORD=password -e POSTGRES_USER=user postgres:10-alpine

docker exec -it postgresdb psql -U user -f /opt/myscript/init.sql

а вот как я это описал в compose

postgresdb:
   container_name: postgresdb
   image: postgres:10-alpine
   restart: "no"
   volumes:
     - ./src/main/resources/static/db:/opt/myscript
     - /home/repository/postgresdata:/var/lib/postgresql/data
   environment:
     - POSTGRES_PASSWORD=password
     - POSTGRES_USER=user
   command: psql -U user -f /opt/myscript/init.sql


запускаю docker-compose up
Как минимум, у тебя в компоузе нет $PWD
источник

А

Александр in Docker — русскоговорящее сообщество
George Gaál
Как минимум, у тебя в компоузе нет $PWD
ну так я его заменил ./ там все работает проблема в том, чтобы command правильно прописать
источник

GG

George Gaál in Docker — русскоговорящее сообщество
А
источник

GG

George Gaál in Docker — русскоговорящее сообщество
Ну, это так не работает
источник

GG

George Gaál in Docker — русскоговорящее сообщество
Начать с того, что тебе надо скрипт sql положить в специальную папочку, где его docker-entrypoint.sh увидит
источник

GG

George Gaál in Docker — русскоговорящее сообщество
Но если ты хочешь ломать command - тебе надо ещё и энтрипойнт переписать
источник

А

Александр in Docker — русскоговорящее сообщество
George Gaál
Начать с того, что тебе надо скрипт sql положить в специальную папочку, где его docker-entrypoint.sh увидит
у меня без compose же все работает, проблема что почему-то не создается ни одной роли и ни одной базы...
т.е. если выполнить docker-compose up -d а потом попытаться выполнить docker-compose exec psql -U user он говорит что нет такой базы ну и postgres то же самое
источник

GG

George Gaál in Docker — русскоговорящее сообщество
Разницы между компоузом и ран нет
источник

GG

George Gaál in Docker — русскоговорящее сообщество
У меня постгрес в компоуз норм работает
источник

А

Александр in Docker — русскоговорящее сообщество
George Gaál
У меня постгрес в компоуз норм работает
Ну подскажи тогда, как psql запустить изнутри docker-compose т.е. из строчки 'сommand: '
источник

GG

George Gaál in Docker — русскоговорящее сообщество
Александр
Ну подскажи тогда, как psql запустить изнутри docker-compose т.е. из строчки 'сommand: '
Никак
источник

GG

George Gaál in Docker — русскоговорящее сообщество
docker-compose exec
источник

AM

Artur Mustafin in Docker — русскоговорящее сообщество
Александр
у меня без compose же все работает, проблема что почему-то не создается ни одной роли и ни одной базы...
т.е. если выполнить docker-compose up -d а потом попытаться выполнить docker-compose exec psql -U user он говорит что нет такой базы ну и postgres то же самое
погоди, давай я все объясню. тебе нужно просто запускать все раздельно. суть в том, что для запуска контейнера с psql требуется время, и да, остальные сервисы не поднимутся (поднимутся и скажут что нет такой базы или вообще ошибка соединения с базой.

смотри сюда

https://pastebin.com/WTvu5Pu8

1)  выпиливаем postgis из docker-compose.yml в postgis.yml

2) в оба файла прописываем и поднимаем общую сеть docker create network web

3) запускаем postgis из -f postgis.yml

4) спим 30 секунд в скрипте

5) поднимаем остальную кухню в docker-compose.yml

вариант №2

файл один, но поднимаем сначала только БД, спим и только потом docker-compose up -d, доподнимаем остальное
источник

А

Александр in Docker — русскоговорящее сообщество
Artur Mustafin
погоди, давай я все объясню. тебе нужно просто запускать все раздельно. суть в том, что для запуска контейнера с psql требуется время, и да, остальные сервисы не поднимутся (поднимутся и скажут что нет такой базы или вообще ошибка соединения с базой.

смотри сюда

https://pastebin.com/WTvu5Pu8

1)  выпиливаем postgis из docker-compose.yml в postgis.yml

2) в оба файла прописываем и поднимаем общую сеть docker create network web

3) запускаем postgis из -f postgis.yml

4) спим 30 секунд в скрипте

5) поднимаем остальную кухню в docker-compose.yml

вариант №2

файл один, но поднимаем сначала только БД, спим и только потом docker-compose up -d, доподнимаем остальное
спасибо большое, в принципе все ясно
источник

GG

George Gaál in Docker — русскоговорящее сообщество
> 4) спим 30 секунд в скрипте

не лучшая идея
источник

GG

George Gaál in Docker — русскоговорящее сообщество
я очень "люблю" все эти магические константы
источник

AM

Artur Mustafin in Docker — русскоговорящее сообщество
George Gaál
я очень "люблю" все эти магические константы
да на здоровье
источник