관리 메뉴

피터의 개발이야기

[Docker] 자동완성 설정하기(zsh, MacOS), Insecure completion-dependent directories detected 해결 본문

DevOps/Docker

[Docker] 자동완성 설정하기(zsh, MacOS), Insecure completion-dependent directories detected 해결

기록하는 백앤드개발자 2023. 8. 10. 16:08
반응형

ㅁ 개요

 docker 명령어를 쓰면서 복잡한 명령어의 체계는 잦은 실수를 발생할 수 있습니다. docker 작업의 효율성과 포퍼먼스를 위해 명령어 자동완성 기능은 필수 입니다. 실수를 줄이고 빠르게 명령어를 완성하여 작업의 속도를 향상시켜 줍니다. 이번 글은 docker의 자동완성 기능을 추가하는 과정을 정리하였습니다.

 

 

ㅁ Docker 자동기능 설치여부 판단

 ㅇ docker <tab> 시 위의 화면처럼 디덱토리의 파일 목록이 보인다면 자동완성 기능이 설치 되어 있지 않습니다.

 

 

ㅁ zsh plugin 설정

$ vi ~/.zshrc
~~~
plugins=(... docker docker-compose )
~~~

# 편집완료 후 적용
$ zsh

 ㅇ .zshrc의 문서에서 plugins에 docker docker-compose를 추가합니다.

 ㅇ 설정을 적용하기 위해서 편집 완료 후 zsh 명령어를 실행하여 적용을 합니다.

 

 

ㅁ Insecure completion-dependent directories detected

$ zsh                                                                                                                                                                                                                                            ✔  6442  11:39:49
[oh-my-zsh] Insecure completion-dependent directories detected:
drwxrwxr-x  7 peterseo  admin  224 Jan 21  2021 /opt/homebrew/share/zsh
drwxrwxr-x  9 peterseo  admin  288 Aug  8 21:34 /opt/homebrew/share/zsh/site-functions

[oh-my-zsh] For safety, we will not load completions from these directories until
[oh-my-zsh] you fix their permissions and ownership and restart zsh.
[oh-my-zsh] See the above list for directories with group or other writability.

[oh-my-zsh] To fix your permissions you can do so by disabling
[oh-my-zsh] the write permission of "group" and "others" and making sure that the
[oh-my-zsh] owner of these directories is either root or your current user.
[oh-my-zsh] The following command may help:
[oh-my-zsh]     compaudit | xargs chmod g-w,o-w

[oh-my-zsh] If the above didn't help or you want to skip the verification of
[oh-my-zsh] insecure directories you can set the variable ZSH_DISABLE_COMPFIX to
[oh-my-zsh] "true" before oh-my-zsh is sourced in your zshrc file.

zsh compinit: insecure directories, run compaudit for list.
Ignore insecure directories and continue [y] or abort compinit [n]? y%

 ㅇ 플로그인 관련 소스의 권한 충돌이 있었습니다.

 

$ chmod 755 /opt/homebrew/share/zsh
$ chmod 755 /opt/homebrew/share/zsh/site-functions

 ㅇ 문제된 디렉토리의 권한을 설정합니다.

 

 

ㅁ 자동완성 기능 확인

 ㅇ 권한 문제가 해결되자 정상적으로 자동완성기능이 작동되었습니다.

 

 

ㅁ 함께 보면 좋은 사이트

 ㅇ zsh completion for docker github

 

반응형
Comments