티스토리 뷰
1. Docker 사용법 (Linux에서)
- Docker 다운받기
Centos 기준 # yum install docker
|
2. Docker 사용 권한 주기
sudo usermod -aG docker your-user
|
3. sonarqube Docker 설치하기(소나큐브)
[root@gampol sys4u]# docker pull sonarqube:7.7-community Trying to pull repository docker.io/library/sonarqube ... 7.7-community: Pulling from docker.io/library/sonarqube 6f2f362378c5: Pull complete 494c27a8a6b8: Pull complete 7596bb83081b: Pull complete 372744b62d49: Pull complete fb72767f9beb: Pull complete 3fe571af508a: Pull complete 3e6725074325: Pull complete 37684a10c7c5: Pull complete 05b7a0cb1eab: Pull complete 2b3959d41c49: Pull complete 5d1ba9e9abfd: Pull complete Digest: sha256:15eb5cf8013f6b18049f32e2b6e5fcdd585c5c93766c7f4df393c6ba1937bfb4 Status: Downloaded newer image for docker.io/sonarqube:7.7-community |
# 에러 조치 방법(Cannot connect to the Docker daemon)
4. Sonarqube 환경설정(DB 설정 부분)
#vi sonarqube-5.1.2/conf/sonar.properties
sonar.jdbc.username=sonar sonar.jdbc.password=패스 sonar.jdbc.url=jdbc:mysql://localhost:3306/SONAR
sonar.web.host=0.0.0.0 sonar.web.port=9000
sonar.web.context=
#docker DB 설정방법 (run 하면서 설정하면 가능)
docker run -d --name sonarqube \ -p 9000:9000 -p 9092:9092 \ -e SONARQUBE_JDBC_USERNAME=sonar \ -e SONARQUBE_JDBC_PASSWORD=sonar \ -e SONARQUBE_JDBC_URL=jdbc:mysql://192.168.0.32:3306/sonar \ sonarqube -e SONARQUBE_JDBC_URL=jdbc:mysql://dev-rds-selvas-my-01.vcp.lotte.comdev-rds-vp-my-:3306/sonar \
|
5. sonarqube Docker 실행하기(run / 소나큐브 : 9000 port)
[root@gampol sys4u]# docker run -d --name sonarqube -p 9000:9000 sonarqube Unable to find image 'sonarqube:latest' locally Trying to pull repository docker.io/library/sonarqube ... latest: Pulling from docker.io/library/sonarqube b8f262c62ec6: Pull complete 377e264464dd: Pull complete bde67c1ff89f: Pull complete 6ba84ddbf1b2: Pull complete ee22adb378a6: Pull complete 41d339c20e4f: Pull complete 25c2c6b7a1f3: Pull complete 4b36ae3e85ab: Pull complete 1062305937e9: Pull complete |
6.컨테이너사용(옵션)
-d | detached mode 흔히 말하는 백그라운드 모드 |
-p | 호스트와 컨테이너의 포트를 연결 (포워딩) |
-v | 호스트와 컨테이너의 디렉토리를 연결 (마운트) |
-e | 컨테이너 내에서 사용할 환경변수 설정 |
–name | 컨테이너 이름 설정 |
–rm | 프로세스 종료시 컨테이너 자동 제거 |
-it | -i와 -t를 동시에 사용한 것으로 터미널 입력을 위한 옵션 |
–link | 컨테이너 연결 [컨테이너명:별칭] |
7. 이미지 조작
1) 현디렉토리의 Dockerfile로 이미지를 빌드
docker build ./ docker build -t REPOSITORY[:TAG] ./ #여기 위에 tag 는 버전을 사용합니다. |
2) 빌드를 처음부터 재실행
docker build --no-cache . |
3) 컨테이너로부터 이미지 작성
docker commit CONTAINER[:TAG] IMAGE[:TAG] // 컨테이너는 미리 종료시켜 둘 것 |
4) 이미지빌드시의 명령어를 확인(Dockerfile정보)
[root@gampol sys4u]# docker images docker history IMAGE 예제} [root@gampol sys4u]# docker history 8f2020f3f67d
|
5) 다운로드한 이미지 리스트 출력
[root@gampol sys4u]# docker images |
6) URL로 부터 이미지를 읽어들이기
docker import url REPOSITORY[:TAG] |
7) URL의 파일을 이미지 내의 PATH에 생성
docker insert IMAGE URL PATH |
8) 파일을 이미지로 읽어들이기
docker load < image_filename.tar |
9) 이미지 다운로드
docker pull IMAGE_NAME docker pull IMAGE_NAME:TAG
예) 소나큐브 이미지 다운받기 (7.7-커뮤니티버전) [root@gampol sys4u]# docker pull sonarqube:7.7-community |
10) 이미지 삭제
docker rmi IMAGE // 삭제할 이미지 이름을 열거 docker rmi $(docker images | grep '<none>' | awk '{print$3}') // 태그가 없는 이미지를 모두 삭제한다
예) 우분투 이미지 삭제해보기 [root@gampol sys4u]# docker images
|
11) 이미지를 파일로 출력
docker save IMAGE > image_filename.tar 예제) [root@gampol sys4u]# docker save d7558a6a8598 > image_filename.tar
|
12)이미지 검색
docker search TERM 예제) root@gampol sys4u]# docker search TERM |
13)이미지에 태그 생성
docker tag IMAGE[:TAG] NEWIMAGE[:TAG] |
8. 컨테이너 조작
1) 기동중인 컨테이너에 접속
docker attach CONTAINER // exit로 종료하면 컨테이너도 중지 docker exec -it CONTAINER /bin/bash // exit로 종료해도 컨테이너는 실행 |
2) 컨테이너 내의 파일을 로컬에 복사
docker cp CONTAINER:/remote/path/remote_filename /local/path/local_filename |
3) 이미지로부터 컨테이너 작성
docker create IMAGE docker create --name NAME IMAGE |
4) 컨테이너 작성후 이미지로부터 변경된 파일 확인
docker diff CONTAINER |
5) 컨테이너 내의 이벤트를 감시(기동/정지/작성 등)
docker events |
6) 컨테이너 내의 COMMAND 실행
docker exec CONTAINER COMMAND |
7)컨테이너 내의 COMMAND를 대화식으로 실행
docker exec -it CONTAINER COMMAND |
8)컨테이너를 파일로 출력 (컨테이너의 상세정보 확인)
docker inspect CONTAINER docker inspect --format="{{.NetworkSettings.IPAddress}}" CONTAINER |
9) format옵션을 이용하면 출력정보를 제어할 수 있다. 컨테이너 stdout을 확인
docker logs CONTAINER |
10) 컨테이너와의 포트 전송 설정을 확인
docker port CONTAINER docker port CONTAINER PRIVATE_PORT |
11) 컨테이너 리스트 확인
docker ps // 실행중인 컨테이너만 출력 docker ps -a // 정지중인 컨테이너를 포함 docker ps -aq // 컨테이너의 해쉬 리스트만 출력 |
12)컨테이너 삭제
docker rm CONTAINER [CONTAINER...] // 삭제할 컨테이너 이름을 열거 docker rm $(docker ps -aq) // 모든 컨테이너 삭제 |
13)이미지로부터 컨테이너 기동
docker run -itd IMAGE // 컨테이너를 만들어 띄우기만 할 뿐 docker run -it IMAGE /bin/bash // 이름이 없으면 자동으로 부여됨 docker run -it --name NAME IMAGE /bin/bash // 이름을 붙이고 bash 접속 |
14)로컬 디렉토리에 컨테이너 디렉토리를 mount 시키기
docker run -it -v /var/www:/var/html IMAGE /bin/bash // 로컬 디렉토리 /var/www를 컨테이너의 /var/html에 mount |
15)로컬 포트 통신을 컨테이너 포트에 전송시키기
docker run -it -p 9000:9000 IMAGE bash // 로컬 포트 9000을 컨테이너 포트 9000에 전송시킨다. // httpd 컨테이너를 띄우면 기본 9000포트로 listening을 하고 있으므로 // 접속할 때에는 브라우저에서 http://xx.xx.xx.xx:9000으로 접속한다.
[root@gampol sys4u]# docker run -d --name sonarqube -p 9000:9000 sonarqube
|
16)컨테이너 기동/정지/재시작
docker start CONTAINER docker stop CONTAINER docker restart CONTAINER |
17)컨테이너에서 실행 중인 프로세스 확인
docker top CONTAINER |
'4. Docker 관련' 카테고리의 다른 글
docker Keycloak 설치 해보기 (0) | 2021.04.11 |
---|---|
5. Docker-Compose Install 방법 (보너스 몽고디비까지설치하기) (0) | 2020.04.16 |
3. 도커 push 도커파일 ... 만들기 (0) | 2020.04.10 |
2. 도커 사용법 익혀보자 (0) | 2020.03.30 |
12탄!! 도커 깔끔 삭제하기 그리고... 연습하기 (0) | 2020.03.18 |
- Total
- Today
- Yesterday
- 오라클 홈디렉토리 copy 후 startup 에러
- 5.4.0.1072
- 설치하기(HP-UX)
- 오라클 트러블 슈팅(성능 고도화 원리와 해법!)
- 오라클
- MSA
- 스토리지 클레스
- 오라클 인스턴트클라이언트(InstantClient) 설치하기(HP-UX)
- 쿠버네티스
- 앤시블
- 커널
- pod 상태
- 버쳐박스
- 튜닝
- 테라폼
- 코로나19
- ORACLE 트러블 슈팅(성능 고도화 원리와 해법!)
- startup 에러
- 트리이스
- [오라클 튜닝] instance 튜닝2
- 여러서버 컨트롤
- 우분투
- 키알리
- CVE 취약점 점검
- directory copy 후 startup 에러
- Oracle
- [오라클 튜닝] sql 튜닝
- K8s
- (InstantClient) 설치하기(HP-UX)
- ubuntu
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |