Docker 명령어 자동완성
MacOS에서 Docker를 이용하여 컨테이너(Container)를 실행하고 테스트를 진행 중이었습니다.
그런데 어느 날, Docker 명령어를 작성하고 Tab
을 눌렀는데 자동완성이 지원되지 않았습니다.
컨테이너의 이름은 너무 길고 자동완성은 되질 않으니, 테스트가 원활히 이루어지지 않았습니다.
기본적으로, 쉘(Shell) 기반인 터미널(Terminal)에서는 자주 사용하는 문구
즉, 자동완성을 지원하는 문구는 Tab
을 눌러서 자동완성시킬 수 있습니다.
분명 다른 명령어들에 대한 자동완성은 잘 되는데, Docker 명령어에 대해서만 자동완성이 동작하지 않았습니다.
Zsh에 Docker 플러그인 추가하기
환경설정에 따라 사용하시는 터미널의 쉘이 Zsh이 아닐 수도 있습니다.
이 경우 해당 관련된 설정법을 찾아보시길 바랍니다.
MacOS에서 지원되는 Zsh은 다양한 플러그인들을 이미 지원하고 있습니다.
다음과 같은 방법으로, 기존의 플러그인들에 Docker를 추가해 주세요.
먼저, Zsh을 설정하기 위해 해당 Zsh 설정 파일에 들어갑니다.
$ vim ~/.zshrc
만약 vim
을 이용하지 않으신다면, vi
명령어를 이용하시길 바랍니다. 혹은 가지고 있는 IDE 또는 텍스트 편집기에서 해당 파일을 Open 하셔도 좋습니다.
이후 파일 내부에 작성된 내용을 찾다보면 아래와 같은 문구가 있는 곳을 발견할 것입니다.
plugins=(...)
적용중인 다양한 플러그인들이 괄호 안에 나열되어 있을 것입니다.
이는 쉘 스크립트 언어에서 배열을 선언하는 방식입니다.
그 나열된 값들 중 가장 뒤에 이제 사용하시는 Docker 구문을 추가해 주시면 됩니다.
만약 Docker 만을 사용 중이라면:
plugins=(... docker)
추가적으로 Docker-compose 까지 사용 중이라면:
plugins=(... docker docker-compose)
반드시 띄어쓰기를 통해 기존에 나열된 값들과 구분지어 입력하도록 합니다.
Zsh 설정파일 내부의 Plugin들을 추가/수정해 주었으면, 이제 밖으로 빠져나오도록 합니다.
vim 혹은 vi 명령어를 이용하여 파일 수정 중에 파일을 저장하고 나오려면, 입력 상태가 아닌 환경에서 :wq
를 입력하여 나오면 됩니다.
이제 마지막으로 설정 변경한 Zsh 파일을 반영하도록 아래 명령어를 입력합니다.
$ source ~/.zshrc
source
명령어를 이용하여 해당 파일(쉘 기반 스크립트)을 실행할 수 있습니다.
이제 다시 Docker 명령어를 입력해 보면 명령어와 컨테이너 이름 등 자동완성이 올바르게 수행될 것입니다!
'개발자 💻 > Docker' 카테고리의 다른 글
Docker in Ubuntu 18.04 (0) | 2023.07.03 |
---|