안녕하세요.
Docker을 이용해서 QT 빌드 시스템 구축하는 방법을 예제로
Docker 활용법에 대해서 말씀드리겠습니다.
Docker는 Container 기술 중 하나로
Container 기술 중에 가장 빠르게 성장하고 있고 또 널리 쓰이고 있는 중입니다.
저도 최근에 Docker를 접하게 되었고, Docker 신봉자가 되었습니다.
1. Docker 설치
sudo apt-get install docker.io |
2. sudo 명령어 없이 docker 실행하기
sudo usermod -aG docker $USER |
이후 리붓 또는 재로그인
3. Dockerfile 작성하기
FROM ubuntu:18.04 RUN apt-get update RUN apt-get install -y build-essential perl python git wget libgl-dev RUN apt-get install -y qt5-default qtcreator ENTRYPOINT qtcreator |
a. FROM ubuntu:18.04
- ubuntu:18.04를 기반으로 이미지를 만든다.
b. RUN ~~~
- ~~~를 실행한다.
c. ENTRYPOINT
- container start 시 수행할 명령어
4. Dockerfile 빌드하기
- docker build --tag dev:ubuntu_18.04 .
- docker images
5. container 실행하기
docker run -it -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix dev:ubuntu_18.04 |
- -it : Bash를 사용하려면 이 옵션을 사용하는 걸 권장
- -e : container의 환경 변수 설정
- -v : host 디렉토리와 container 디렉토리를 연결
위는 docker run 예제에서는 ssh X11 forwarding 기술을 사용하기 위해서 ( Container에서 qtcreator를 실행하기 위함. )
-e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix 를 추가하였습니다.
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root' No protocol specified qt.qpa.screen: QXcbConnection: Could not connect to display :1 Could not connect to any X display. |
만약 위와 같은 에러가 출력되면
xhost + |
6. 프로젝트 생성 및 빌드 그리고 실행
'Dev Platform > Docker' 카테고리의 다른 글
[Docker] tensorflow object detection 샘플 돌려보기(GPU) (1) | 2019.04.07 |
---|---|
[Docker] nvidia docker 및 nvidia/cuda 이미지 설치하기 (0) | 2019.04.04 |
[Docker] jupyter notebook(쥬피터 노트북) 포함하여 이미지 만들기 (0) | 2019.04.03 |
[Docker] python3 도커 이미지 만들기 ( 파이참 포함 ) (1) | 2019.03.31 |
[Docker] image를 계층 분리해서 관리 ( Dockerfile ) (0) | 2019.03.31 |