Docker: 두 판 사이의 차이

학교의 모든 지식. SMwiki
둘러보기로 이동 검색으로 이동
1번째 줄: 1번째 줄:
==개요==
==개요==
반가상화 기술.
반가상화 기술.
<br />
=설치=
==리눅스에서 설치==
===우분투===
{| class="wikitable"
!과정
!설명
!방법
|-
|설치
|
#업데이트
#HTTPS를 통해 패키지를 사용할 수 있게끔 설치.
#도커 저장소용 GPG 키를 추가.
#APT 소스에 도커 저장소 추가.
#도커 설치.
|
#sudo apt update
#sudo apt install apt-transport-https ca-certificates curl software-properties-common
#curl -fsSL <nowiki>https://download.docker.com/linux/ubuntu/gpg</nowiki> | sudo apt-key add -
#sudo add-apt-repository "deb [arch=amd64] <nowiki>https://download.docker.com/linux/ubuntu</nowiki> bionic stable"
#sudo apt install docker-ce
|-
|확인
|
#이것저것 뜨면 설치가 된 것.
#active가 뜬다면 서비스 가동중.
|
#apt-cache policy docker-ce 혹은 sudo systemctl status docker
#sudo systemctl status docker
|-
|유저추가
|도커 관련 명령어를 사용할 때마다 sudo를 사용해야 한다. 이를 방지하기 위한 과정.
이거 적용하고 sudo service docker restart 재시작.
그리고 유저도 로그아웃했다 들어와야 한다.
|sudo usermod -aG docker $USER
|-
|권한부여
|소켓파일의 권한을 이용할 수 있게 소유자를 docker그룹으로 바꾼다.
이걸 안하면 다음과 같은 에러가 난다.<ref>Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock:.......</ref>
|sudo chown root:docker /var/run/docker.sock
|}


=기초 사용=
=기초 사용=

2021년 3월 9일 (화) 20:53 판

개요

반가상화 기술.

기초 사용

이미지 관련

과정 설명 방법
이미지 확인 이미지리스트를 본다.

용량과 태그, ID, 생성날짜, 크기를 볼 수 있다.

docker images
이미지 삭제 이미지에서 파생된 컨테이너를 삭제해야 삭제할 수 있다. docker rmi 이미지:태그
모든 이미지 삭제 docker rmi $(docker images -q)
이미지 히스토리 이미지의 변경 히스토리를 조회한다. docker history 이미지:태그

컨테이너 관련

과정 설명 방법
실행
옵션 설명
-v 호스트경로:컨테이너경로 호스트의 파일을 컨테이너에 연결한다.(-v옵션 여러 개 사용 가능)
--expose 포트번호 다른 컨테이너에서 접속할 수 있는 포트번호를 설정한다.
--link 컨테이너:별칭 컨테이너를 다른 컨테이너와 연결해서 실행한다.(연결할 것이 실행되어 있어야 함)

호스트파일에 IP주소가 설정되어 별칭으로 접속할 수 있다.

/별칭:포트번호/연결한컨테이너하위디렉터리

(포트번호는 docker ps로 확인 가능)

-p 호스트포트:컨테이너포트 포트를 연결한다.
-d 데몬으로 실행(백그라운드에서 실행)
--privileged 모든 기능을 사용할 수 있게끔, 권한을 부여한다는 의미.

IP주소 등 네트워크 설정을 만질 수 있다.

로컬에 이미지가 없으면 자동으로 이미지를 받아온다.

docker run 옵션 이미지이름:태그
종료 docker stop 컨테이너
현재 실행 컨테이너 확인 -a 옵션을 붙이면 종료된 컨테이너도 볼 수 있다. docker ps
컨테이너에서 파일 꺼내기 컨테이너에서 파일을 꺼낸다. docker cp 컨테이너:경로 호스트경로

docker cp hello:/etc/file.conf ./ # 현재경로로 컨테이너의 파일을 꺼낸다.

변경파일 확인 컨테이너가 실행되며 변경된 파일목록 출력.

기준은 컨테이너를 생성한 이미지 기준.

A: 추가된 파일

C: 변경된 파일

D: 삭제된 파일

docker diff 컨테이너
이미지로 저장 변경사항을 이미지로 생성한다.
옵션 설명
-a
-m "코멘트" 코멘트를 단다.

docker images로 확인한다.

docker commit 옵션 컨테이너 이미지:태그

저장공간 사용

과정 설명 방법
이미지 올리기 레지스트리 서버에 이미지를 올린다.

192.000.000.000:포트번호 형태로 개인저장소에 올라간 이미지를 받아올 수도 있다.

docker push
이미지 받기 서버에서 이미지를 받는다.

localhost:포트번호 형식으로 개인저장소에 올릴 수도 있다.

docker pull 레지스트리URL/이미지:태그

포테이너 설치

과정 설명 방법
볼륨 생성 사용할 volume을 생성한다. docker volume create portainer_data
생성 --restart=always 옵션은 docker를 재시작 해도 자동으로 구동하라는 옵션. docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data --restart=always portainer/portainer