docker helpers
This commit is contained in:
parent
14f3f2caf2
commit
5d3004c87b
48
helpers/docker.sh
Normal file
48
helpers/docker.sh
Normal file
@ -0,0 +1,48 @@
|
||||
#!/bin/bash
|
||||
|
||||
########################################################
|
||||
# Docker wrappers
|
||||
########################################################
|
||||
|
||||
# Вызывает корректную команду docker compose
|
||||
docker.compose() {
|
||||
require docker
|
||||
|
||||
argl profiles 0 profiles
|
||||
args=${*/--profiles=[a-zA-Z_,0-9]*/}
|
||||
|
||||
if $(docker compose &>/dev/null); then
|
||||
local cmd="docker compose $args"
|
||||
elif installed_pkg "docker-compose"; then
|
||||
local cmd="docker-compose $args"
|
||||
warn
|
||||
warn "docker-compose v1 устарел и не поддерживается, его поведение непредсказуемо."
|
||||
warn "Обнови docker согласно документации: https://docs.docker.com/engine/install/"
|
||||
warn
|
||||
else
|
||||
error "Должен быть установлен docker-compose-plugin!"
|
||||
die "Установи docker согласно документации: https://docs.docker.com/engine/install/" 2
|
||||
fi
|
||||
|
||||
if [[ "$profiles" ]]; then
|
||||
export COMPOSE_PROFILES=$profiles
|
||||
debug "Выполнено: export COMPOSE_PROFILES=$profiles"
|
||||
fi
|
||||
|
||||
debug "Команда: $cmd"
|
||||
$cmd
|
||||
}
|
||||
|
||||
# Выводит информацию о контейнере
|
||||
docker.inspect() {
|
||||
cmd="docker inspect $*"
|
||||
debug "Команда: $cmd"
|
||||
$cmd 2>/dev/null
|
||||
}
|
||||
|
||||
# Выполняет команду в контейнере от имени root
|
||||
docker.exec() {
|
||||
cmd="docker exec -u root -it $*"
|
||||
debug "Команда: $cmd"
|
||||
$cmd
|
||||
}
|
Loading…
Reference in New Issue
Block a user