콘텐츠로 이동

아래는 주어진 명령어와 관련된 설명과 예제를 포함한 README.md 파일 작성 예시입니다:


Docker 설치 후 사용자 권한 및 컨테이너 자동 재시작 설정

1. Docker 권한 설정: 사용자에게 Docker 그룹 권한 부여

Docker 설치 후 기본적으로 root 사용자만 실행 권한을 가집니다. Docker를 비관리자 사용자도 실행할 수 있도록 하려면 해당 사용자를 docker 그룹에 추가해야 합니다.

명령어:

sudo usermod -aG docker $USER

상세 설명:

  1. usermod:
  2. 사용자 계정을 수정하는 명령어입니다.
  3. -aG: 사용자를 특정 그룹에 추가합니다.
  4. docker: Docker 실행 권한을 가진 그룹입니다.
  5. $USER: 현재 사용 중인 사용자 계정을 나타냅니다.

  6. 명령 실행 후 변경 사항을 적용하려면 **로그아웃 후 다시 로그인**해야 합니다.

확인 방법:

docker ps
위 명령어를 실행했을 때 에러 없이 결과가 나오면 정상적으로 설정된 것입니다.


2. 컨테이너 자동 재시작 설정

Docker 컨테이너가 종료되더라도 서버 재부팅 시 자동으로 컨테이너가 다시 시작되도록 설정하려면 --restart 옵션을 사용합니다.

명령어:

docker run -d --restart always <container_name>

상세 설명:

  • -d: 컨테이너를 백그라운드에서 실행합니다.
  • --restart always: 컨테이너를 항상 재시작하도록 설정합니다.
  • 예: 서버 재부팅 또는 컨테이너 오류 종료 시 자동으로 다시 시작됩니다.
  • <container_name>: 실행하려는 컨테이너의 이름입니다.

예제:

docker run -d --restart always nginx
위 명령어는 nginx 컨테이너를 백그라운드에서 실행하고, 자동 재시작을 활성화합니다.


3. sudo 권한 설정 (visudo 명령어 사용)

특정 사용자에게 sudo 권한을 부여하거나 수정하려면 visudo 명령어를 사용합니다.

명령어:

sudo visudo

상세 설명:

  • visudo:
  • /etc/sudoers 파일을 안전하게 수정하기 위한 명령어입니다.
  • 잘못된 구문으로 인해 sudo 권한이 손상되는 것을 방지합니다.
  • 이 명령어는 관리자로 실행해야 하며, 기본적으로 텍스트 편집기가 열립니다.

설정 방법:

  1. 명령어 실행:

    sudo visudo
    

  2. 텍스트 편집기가 열리면 사용자 권한을 추가합니다. 예를 들어, newuser라는 사용자에게 sudo 권한을 부여하려면:

    newuser ALL=(ALL:ALL) ALL
    

  3. 파일을 저장하고 종료합니다.

예제:

  • 사용자 john에게 모든 sudo 권한을 부여하려면:

    john ALL=(ALL:ALL) ALL
    

  • 특정 명령만 허용하려면:

    john ALL=(ALL:ALL) NOPASSWD: /usr/bin/systemctl restart docker
    
    위 설정은 사용자 john이 비밀번호 입력 없이 Docker를 재시작할 수 있도록 설정합니다.


주의 사항

  • sudo visudo 명령을 통해 수정할 때는 반드시 신중히 작업해야 합니다. 잘못된 구문이 있으면 사용자 권한이 손상될 수 있습니다.
  • Docker 권한을 부여한 후에는 로그아웃/로그인 또는 su - $USER 명령을 통해 새로운 세션을 시작해야 권한이 적용됩니다.

위의 내용을 참고하여 Docker 및 사용자 권한 설정을 효율적으로 관리하세요!