티스토리 뷰
리눅스에 도커를 설치를 하고 예제를 실습을 해보자.
이전 시간에 윈도우, 맥에서 도커 설치를 알아 봤고 구글 클라우드를 이용하여 리눅스 인스턴스까지 생성을 했다.
참고 2020/04/18 - [SW] - [클라우드] GCP(Google Cloud Platform) 에서 리눅스 생성 하기
그럼 우리가 만든 GCP에서 생성된 리눅스에 도커를 설치를 해보자.
브라우저로 연결된 쉘에서 아래 명령어를 입력 한다.
GCP 에서 생성된 리눅스 버전은 Debian 9 버전이다. 아래 도커 문서를 참고해서 설치 하자.
https://docs.docker.com/engine/install/debian/
먼저 도커를 사용 할 때 의존된 라이브러리 설치를 한다. 필요한 라이브러리를 패키지 매니저를 사용해서 설치
sudo apt install -y apt-transport-https ca-certificates curl gnupg2 software-properties-common
설치가 완료 되었으면 도커를 다운 받자.
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add
데비안 패키지 매니저(apt)에 도커를 설치 할 수 있게 저장소(repository)를 추가를 한다.
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
apt 소스 업데이트를 해준다(패키지 매니저 업데이트)
sudo apt update -y
소스리스트가 업데이트가 완료 되면 apt install 명령으로 도커를 설치 한다.
최신 버전 보다는 안정 버전인 18.06 을 설치 한다.
sudo apt install -y docker-ce=18.06.3~ce~3-0~debian
도커가 잘 설치되었다는 것을 체크 해보기 위해서 콘솔 창에 도커 라고 실행해보면 먼가 장황한 결과가 출력된다.
docker 명령어를 입력 해보자.
설치를 된것을 확인 하고 마지막으로 해야 할 일은 docker 명령어들을 sudo 없이 일반 사용자들도 사용하기 위해 리눅스에서는 root 권한이 필요하다. 지금 사용 하고 있는 계정에 sudo 없이 docker 사용 할 수 있게 docker 그룹에 추가하여 권한을 부여 한다.
sudo usermod -aG docker $USER
$USER 변수는 현재 사용자에게 권한을 준다라는 의미이다.
특정 사용자에게 권한을 부여 하려면 $USER 대신에 사용자 아이디를 넣어 주면 된다.
많이 하는 실수가 권한을 주고 바로 docker 명령어를 이용해 도커 이미지를 다운 받고 도커 명령어를 사용 하게 되면 퍼미션 문제가 여전히 발생 되는 경우가 생긴다. (확인을 해보려면 docker ps 명령어를 입력 해본다.)
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.38/containers/json: dial unix /var/run/docker.sock: connect: permission denied
위 문제를 해결 하기 위해 현재 사용자 계정을 로그 아웃 하고 재 로그인을 해야지만 sudo 없이 도커를 정상적으로 사용할 수 있다. 로그아웃은 exit 를 입력 하거나 Ctrl + D 키를 누르면 쉘에서 빠져 나온다.(브라우저에서 접속 했다면 브라우저가 닫긴다.) 다시 VM 인스턴스에서 SSH를 눌러 접속을 하자.
docker ps
위 명령어를 입력을 하면 퍼미션 에러는 이제 안나오는 것을 확인 할 수 있다.
이제 개발환경을 도커로 구성해 보도록 하자.
개발 환경은 mysql, spring boot 로 구성되고, 각각의 레이어를 컨테이너를 사용하여 실행 할 것이다.
'DevOps' 카테고리의 다른 글
[쿠버네티스 Kubernetes] Rancher(멀티 Kubernetes 클러스터 관리)설치 (0) | 2020.04.20 |
---|---|
[도커(Docker)] Error response from daemon 해결 방법 (0) | 2020.04.19 |
[클라우드] GCP(Google Cloud Platform) 에서 리눅스 생성 하기 (0) | 2020.04.18 |
[도커(Docker)] 도커 설치와 웹서버 구동 (MacOS) (0) | 2020.04.17 |
[도커(Docker)] 도커 설치 및 도커 컨테이너 웹서버 구동 (Windows) (1) | 2020.04.16 |
- Total
- Today
- Yesterday
- 자바
- WEB
- docker
- nginx
- pythonanywhere
- 리눅스
- mysql
- GIT
- Hello World
- 오라클
- python
- Visual Studio
- HTML
- 자바스크립트
- 플라스크
- 웹앱 프로그래밍
- 파이썬
- flask
- oracle
- github
- GCP
- 부트스트랩
- 웹앱
- 웹앱프로그래밍
- javascript
- DB
- Cloud
- Java
- 도커
- 클라우드
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |