이전글[Docker] 도커 컨테이너 사이에 디렉터리 및 파일 공유하기[Docker] 도커 컨테이너의 볼륨을 호스트 OS와 공유하기도커볼륨이전글들에서 컨테이너에서 만들어지는 데이터들을 컨테이너가 아닌 호스트나 다른 컨테이너를 통해서 저장 및 공유하는 방법을 알아보았습니다. 이번글 역시 컨테이너에 데이터를 저장하는 것이 아닌 도커 자체에서 관리하는 도커 볼륨이라는 저장소에 저장하는 방법을 알아보도록 하겠습니다.도커는 도커 자체에 제공하는 데이터 저장공간이 있으며 이를 도커 볼륨이라고 하는데, 이곳에 컨테이너의 데이터들을 저장하게 되면 컨테이너를 제거하거나 문제가 발생한 경우에도 데이터를 보존할 수 있습니다.도커볼륨 생성하기먼저 도커 볼륨을 관리하는 명령어로는 docker volume이 있으며, 도커볼륨을 생..
시스템 인프라
2018. 6. 26. 06:30
[Docker] 도커 컨테이너 사이에 디렉터리 및 파일 공유하기
이전글[Docker] 도커 컨테이너의 볼륨을 호스트 OS와 공유하기볼륨 컨테이너도커 컨테이너1 그리고 컨테이너2 두 개의 컨테이너가 있다고 할 때 컨테이너2가 컨테이너1의 특정 디렉터리 및 파일을 마운트하여 공유할 수 있습니다. 이때 조건이 있는데, 컨테이너1은 호스트의 디렉터리를 docker run -v 옵션(또는 --volume 옵션)을 통해 공유하고 있는 상태여야 합니다.즉 위와 같은 그림의 구조라고 볼 수 있습니다. 호스트의 /mysql_dir 디렉터리를 mysqldb 컨테이너를 생성할 당시에 공유하기 위해서 -v 옵션을 사용하여 /var/lib/mysql 디렉터리로 마운트합니다. 이때 mysqldb2 컨테이너를 생성하면서 이전에 이미 공유설정이 되어 있던 /var/lib/mysql 디렉터리를 그..
시스템 인프라
2018. 6. 26. 02:00
[Docker] 도커 컨테이너의 볼륨을 호스트 OS와 공유하기
컨테이너를 제거하면 데이터도 함께 제거된다도커 컨테이너가 동작하면서 생성된 컨테이너 데이터들은 기본적으로 컨테이너를 삭제하게 되면 같이 제거됩니다. 다음과 같이 MySQL 컨테이너를 생성했다가 docker rm 명령어로 제거하면 해당 컨테이너에 있던 MySQL 데이터까지 모두 사라지는 것입니다.# docker run -d \> --name mysqldb \> -e MYSQL_ROOT_PASSWORD=123456 \> -e MYSQL_DATABASE=proddb \> mysql당연하게도 mysqldb 컨테이너에 저장되는 db 데이터들 또한 같이 제거됩니다.# docker stop mysqldb# docker rm mysqldb컨테이너의 데이터를 호스트 OS에 저장하기도커에서 컨테이너는 정말 쉽게 제거가 가..
시스템 인프라
2018. 6. 22. 09:30
[Docker] 도커 네트워크 구조 및 컨테이너 호스트 OS 외부에 개방하는 방법
호스트 입장에서의 컨테이너호스트에 도커를 설치하고 컨테이너를 생성하는 경우 네트워크 구조는 대략 위와 같이 docker0 인터페이스가 생성됩니다.docker0 인터페이스는 가상 인터페이스이며, 172.17.~/8의 IP를 할당받게 됩니다. 또한 docker0 인터페이스는 bridge 네트워크로 컨테이너가 하나씩 생성될 때마다 바인딩 되는 형식이므로 컨테이너가 통신할 때에는 무조건 docker0 인터페이스를 거치게 됩니다. 브릿지에 대한 정보는 brctl show 명령어로 확인 가능합니다.컨테이너의 네트워크 대역컨테이너는 NAT를 통해 IP주소를 할당받는다. 기본적으로 설정이 따로 없다면 컨테이너에는 172.17.0.x/8의 IP를 순차적으로 할당합니다. 이를 확인하기 위해 우분투 컨테이너를 하나 띄웁니다..
시스템 인프라
2018. 6. 21. 10:00
[Docker] 도커로 워드프레스(WordPress) MySQL 간단 구축 및 설정
참고글[Docker] Linux 환경에 Docker 설치하기 (Ubuntu, REHL, CentOS)[Docker] 컨테이너 목록 확인하기 - docker ps 명령어[Docker] Docker 컨테이너 확인, 생성, 접속, 빠져나오기[Docker] 컨테이너 정지 및 삭제하기[Docker] 컨테이너 로그 보기 - docker logs 명령어도커로 워드프레스(WordPress) 간단 구축하기도커를 활용하여 워드프레스를 구축하는 방법을 알아봅니다. 이 글의 범위는 워드프레스를 띄우는 것까지 목표이며, 워드프레스에 대한 가이드는 제공하지 않습니다. 또한 도커 자체를 설치하는 과정은 참고글을 확인하도록 합니다.워드프레스 및 MySQL 컨테이너 구성대부분의 서비스는 하나의 모듈로 동작하는 것이 아닌 여러 개의 모..
시스템 인프라
2018. 6. 20. 00:30
[Docker] 컨테이너 로그 보기 - docker logs 명령어
도커 컨테이너 로그 보기도커 컨테이너의 로그를 볼때는 docker logs 명령어를 사용합니다. docker logs 명령어는 컨테이너의 표준 출력(stdout)과 에러(stderr)을 확인하도록 되어있습니다.root@server:~# docker logs wordpress옵션옵션설명-f로그를 실시간으로 출력하여 보여줍니다.-t로그 앞에 시간(타임스탬프)을 출력합니다.--tail 숫자숫자를 지정하면 숫자만큼의 로그만 출력합니다.도커 워드프레스 로그 보기워드프레스는 아파치 웹서버 기반으로 구동됩니다. 따라서 원래는 컨테이너 로그가 아닌 컨테이너 안에서 구동되는 아파치 로그를 봐야 워드프레스의 로그를 볼 수 있습니다.먼저 워드프레스 컨테이너에 접근합니다.root@server:~# docker exec -i..
시스템 인프라
2018. 6. 19. 12:00
[Docker] 컨테이너 정지 및 삭제하기
도커 컨테이너 삭제하기컨테이너를 삭제할때는 docker rm {컨테이너명 또는 ID}를 사용합니다. 삭제된 컨테이너는 복구되지 않기때문에 신중하게 삭제하거나 중요한 데이터들은 백업을 한 이후에 삭제하도록 합니다.컨테이너를 삭제합니다. 삭제 대상을 확인하려면 docker ps -a로 컨테이너 이름 및 ID를 알 수 있습니다.root@server:~# docker rm thirsty_kirchthirsty_kirch컨테이너 목록을 통해 잘 제거되었는지 확인합니다.root@server:~# docker ps -a그러나 실행중인 컨테이너를 삭제하는 경우라면 다음과 같이 오류가 발생합니다. 정지후 삭제하거나 -f 옵션을 사용해야 합니다.root@server:~# docker rm mycentosError resp..
시스템 인프라
2018. 6. 19. 05:00
[Docker] 컨테이너 목록 확인하기 - docker ps 명령어
이전글[Docker] Docker 컨테이너 확인, 생성, 접속, 빠져나오기도커 컨테이너 목록 확인하기docker ps 명령어를 사용하면 생성된 컨테이너 목록을 볼 수 있습니다.docker ps 명령어는 기본적으로 작동중인 컨테이너만을 보여줍니다.root@server:~# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES8d79120cfdff centos:7 "/bin/bash" 11 minutes ago Up 7 minutes ..
시스템 인프라
2018. 6. 18. 04:30
[ubuntu] 우분투 그놈(Gnome) 다운로드 및 설치 방법
Ubuntu Gnome우분투 Gnome은 GUI 환경에서의 우분투를 말합니다. 기본 Ubuntu Desktop의 경우에도 GUI 환경이지만 유니티라는 GUI 환경을 사용하며 유니티 역시 Gnome을 기반으로 합니다. Ubuntu Gnome은 순수한 Gnome GUI 환경을 제공한다는 차이점이 있습니다.이미지는 카이스트 ftp 서버에서 받습니다. 카카오 ftp서버에서는 찾지 못했음..http://ftp.kaist.ac.kr/ubuntu-cdimage/ubuntu-gnome/releases/16.04/release/다이렉트 다운로드 링크 (gnome-desktop-amd64.iso)http://ftp.kaist.ac.kr/ubuntu-cdimage/ubuntu-gnome/releases/16.04/relea..
시스템 인프라
2018. 6. 18. 00:30
[Docker] Docker 컨테이너 확인, 생성, 접속, 빠져나오기
이전글[Docker] 도커 컨테이너(Docker Container)에 대한 이해[Docker] 도커 이미지란, 이미지와 컨테이너 간의 관계[Docker] Docker 이미지 검색 및 다운로드 받기Docker 컨테이너도커 컨테이너란 mysql, wordpress, 리눅스 배포판등의 도커 이미지를 가지고 생성한 격리 공간입니다. 이러한 컨테이너는 각각의 독립적인 자원(메모리, 저장공간, 네트워크, 디렉터리)을 할당받습니다. 도커 이미지와 컨테이너에 대한 자세한 개념은 이전글을 참조합니다.도커 컨테이너 생성 및 실행docker run 명령어를 사용하면 컨테이너를 생성함과 동시에 실행할 수 있습니다. 앞에서 말했지만 컨테이너는 도커 이미지를 바탕으로 생성되는데 run 명령어는 이미지가 없을 경우에 자동으로 다운..