docker 용기를 시작하고 정지하는 데 편리한 조개 함수

8505 단어 fzfDocker
docker 용기를 시작하고 멈출 때마다 이름의 지정이 번거로워지기 때문에fzf를 사용하여 조개 함수를 만들었습니다.
※ 나는 공교롭게도 peco파부터 fzf파인 사람이기 때문에 페코파 사람들은 적당히 고칠 수 있다.
※ 나는 ~/.zshrc에 조개 함수를 추가했다.

docker-start



시작하지 않은 컨테이너를 선택한 후 시작합니다.
docker-start() {
  local container
  container="$(docker ps -a -f status=exited | sed -e '1d' | fzf --height 40% --reverse | awk '{print $1}')"
  if [ -n "${container}" ]; then
    echo 'starting container...'
    docker start ${container}
  fi
}

docker-stop



시작할 컨테이너를 선택한 후 중지합니다.
docker-stop() {
  local container
  container="$(docker ps -a -f status=running | sed -e '1d' | fzf --height 40% --reverse | awk '{print $1}')"
  if [ -n "${container}" ]; then
    echo 'stopping container...'
    docker stop ${container}
  fi
}

docker-exec-bash



bash로 용기를 연결하세요.
(bash로 자주 연결해서 겸사겸사 했습니다.)
docker-exec-bash() {
  local container
  container="$(docker ps -a -f status=running | sed -e '1d' | fzf --height 40% --reverse | awk '{print $1}')"
  if [ -n "${container}" ]; then
    docker exec -it ${container} /bin/bash
  fi
}

docker-logs


컨테이너에 가까운 일지를 보세요.
docker-logs() {
  local container
  container="$(docker ps -a -f status=running | sed -e '1d' | fzf --height 40% --reverse | awk '{print $1}')"
  if [ -n "${container}" ]; then
    docker logs -f --tail 100 ${container}
  fi
}

docker-rm


시작하지 않은 컨테이너를 선택한 후 삭제합니다.
docker-rm() {
  local container
  container="$(docker ps -a -f status=exited | sed -e '1d' | fzf --height 40% --reverse | awk '{print $1}')"
  if [ -n "${container}" ]; then
    echo 'removing container...'
    docker rm ${container}
  fi
}

docker-rmi


(보충) 디스크가 가득 차면 이미지를 삭제할 수도 있습니다.
docker-rmi() {
  local image
  image="$(docker images -a | sed -e '1d' | fzf --height 40% --reverse | awk '{print $3}')"
  if [ -n "${image}" ]; then
    echo 'removing container image...'
    docker rmi ${image}
  fi
}

참고 자료


fzf의 Examples 를 참조하십시오.
https://github.com/junegunn/fzf/wiki/Examples

좋은 웹페이지 즐겨찾기