This repository has been archived on 2024-03-04. You can view files and clone it, but cannot push or open issues or pull requests.
linux/.config/bash/module/docker.sh

62 lines
1.4 KiB
Bash
Raw Normal View History

2023-08-08 16:24:15 +03:00
# show container's volumes.
alias docker_volumes="docker inspect -f '{{ .Mounts }}'"
# check if container exited.
alias docker_health="docker ps -a | grep Exited"
# prune everything.
alias docker_prune="docker system prune --volumes --all"
# short aliases.
2023-10-30 03:49:10 +03:00
# usage: dc [SERVICE]
2023-08-08 16:24:15 +03:00
alias dc="docker compose"
alias dcu="docker compose up -d"
alias dcd="docker compose down"
alias dcp="docker compose pull"
alias dcl="docker compose logs -f"
alias dcr="docker compose restart"
alias dcs="docker compose stop"
2023-10-23 03:31:00 +03:00
2023-10-30 03:49:10 +03:00
# down & up specified services.
# usage: dcdu [SERVICES]
2023-12-05 23:56:04 +03:00
dcdu() {
2023-12-05 21:50:45 +03:00
dcd "${@}"
dcu "${@}"
2023-10-23 03:31:00 +03:00
}
2023-10-30 03:49:10 +03:00
# pull & up specified services.
# usage: dcpu [SERVICES]
2023-12-05 23:56:04 +03:00
dcpu() {
2023-12-05 21:50:45 +03:00
dcp "${@}"
dcu "${@}"
2023-10-23 03:31:00 +03:00
}
2023-10-30 03:49:10 +03:00
# up & attach to logs for specified services.
# usage: dcul [SERVICES]
2023-12-05 23:56:04 +03:00
dcul() {
2023-12-05 21:50:45 +03:00
dcu "${@}" && dcl "${@}"
2023-10-23 03:31:00 +03:00
}
2023-08-08 16:24:15 +03:00
# find out container's IP address.
2023-10-30 03:49:10 +03:00
# usage: docker_up <CONTAINER NAME>
2023-12-05 23:56:04 +03:00
docker_ip() {
2023-12-05 21:50:45 +03:00
docker inspect -f '\''{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}'\' $1 | sed "s/^.//" | sed "s/.$//"
2023-08-08 16:24:15 +03:00
}
# update all docker images.
2023-12-05 23:56:04 +03:00
docker_update() {
2023-12-05 21:50:45 +03:00
docker images --format "{{.Repository}}:{{.Tag}}" | xargs -L1 docker pull
2023-08-08 16:24:15 +03:00
}
2023-10-23 03:31:00 +03:00
# autocomplete.
2023-12-05 23:56:04 +03:00
_dc_services() {
2023-12-05 21:50:45 +03:00
_autocomplete "$(docker compose config --services 2> /dev/null)"
2023-10-23 03:31:00 +03:00
}
2023-12-05 23:56:04 +03:00
_dc_containers() {
2023-12-05 21:50:45 +03:00
_autocomplete "$(docker ps --format "\""{{.Names}}"\"")"
2023-10-23 03:31:00 +03:00
}
complete -F _dc_services dcu dcd dcp dcl dcul dcdu dcr dcs dcpu
complete -F _dc_containers docker_volumes docker_ip