참고 : 우리의 서버는 Amazon Linux 2023을 사용중이다.
sudo yum install docker -y
설치하고 나면 inactive 상태다.
# status 확인
systemctl status docker
sudo systemctl start docker
실행하면 docker 데몬이 실행된다.
다 됐나 싶어서 docker ps 같은 명령어 입력하면 permission denied가 나온다
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json": dial unix /var/run/docker.sock: connect: permission denied
Docker를 실행하려는 사용자가 Docker 데몬에 대한 권한이 없을 때 발생하기 때문에 사용자를 docker 그룹에 추가해서 권한을 줘야한다.
sudo usermod -aG <그룹> <사용자>
# ec2-user 사용자를 docker 그룹에 추가
sudo usermod -aG docker ec2-user
-a
는 append
를, -G
는 groups
를 의미하는 옵션이다.
따라서 -aG
는 사용자를 그룹에 추가하는 것을 의미한다. 위 명령은 사용자에게 추가할 그룹을 지정하여 해당 사용자를 해당 그룹에 추가한다.
이렇게 하고 바로 다시 docker 명령어를 쳐도 같은 에러가 발생하는데, 당황하지말고 인스턴스에 재접속 해서 실행하면 잘 된다.
끝!
workflow에서 docker 명령어를 실행해야해서 서버에 먼저 docker 관련 설정을 했다.
다음엔 진짜진짜 yaml 작성하러 가보자!