- sudo 없이 사용하기

-docker는 root권한이 기본적으로 필요하다. 그래서 sudo 없이 사용하기 위해서 다음과 같이 사용자를

docker그룹에 추가한다.

 $ sudo usermod -aG docker $USER # 현재 접속중인 사용자에게 권한주기

 $ sudo usermod -aG docker your-user # your-user 사용자에게 권한주기



- Ubunt16.04 docker 이미지 다운받기

-도커 이미지를 받기위해서는 run 명령어나 pull 명령어로 받을 수 있다.

또한 run 명령어는 해당 이미지가 없다면 자동으로 다운받아 실행시킨다.

$ docker run ubuntu:16.04


- 이미지 실행후 바로 종료된다. 컨테이너는 프로세스이기 때문에 실행중인 프로세스가 없으면 종료된다.


- 다운받은 이미지 확인하기



- 도커 이미지 실행시키기

$ docker run --restart always --name [컨테이너의 이름]  -dt ubuntu:16.04


-여기서 중요한 옵션은 -dt 옵션이다. d는 백그라운드에서 실행시켜주고, t는 pseudo-TTY를 사용한다.


-실행중인 도커 확인하기

$ docker ps 



- 실해중인 컨테이너 내부로 들어가기

$ docker exec -it [들어갈 컨테이너이름 혹은 ID] /bin/bash 



- 컨테이너 내에서 유저 등록하기


- 생성한 유저로 컨테이너 들어가기

유저등록후 exit로 나온다음 다시 들어간다.

 docker exec -u whkong -it Ubutnu4CT1107  /bin/bash


위와같이 유저로 로그인된것을 확인 할 수 있다.


- 컨테이너 변경사항 commit 하여 이미지만들기

$ docker commit [컨테이너 이름] [만들 이미지이름]:[테크] 



- 만든 이미지로 호스트의 디렉토리와 연동시켜 실행시키기


- 컨테이너로 들어가서 호스트 디렉토리와 연결되었는지 확인한다.



- 이젠 빌드에 필요한 프로그램을 설치한후 빌드를 해본다.

$ sudo apt-get update

$ sudo apt-get install openjdk-8-jdk

$ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev libxml2-utils xsltproc unzip bc wget



-docker 환경변수 설정.

도커에서는 USER변수에 값이 안들어가있기 때문에 따로 넣어줘야 한다.

$ export USER=$(whoami) 



작업중.........


+ Recent posts