일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 알고리즘공부
- Axon framework
- nestjs
- 자바공부
- JPA스터디
- JPA공부
- DDD
- 플러터 공부
- nestjs스터디
- JPA예제
- 플러터 개발
- 기술면접공부
- JPA 공부
- 자료구조공부
- 코테준비
- 스프링부트
- nestjs공부
- JPA
- K8S
- 기술공부
- 카프카
- 스프링
- querydsl
- 코테공부
- 스프링부트공부
- 스프링 공부
- Kafka
- Flutter
- 프로그래머스
- 스프링공부
- Today
- Total
목록Infra/[K8S & Docker] (37)
DevBoi
컨테이너간 파일을 복사하는 방법이 있다고한다. 잘...쓸까 싶긴한데 로컬 파일을 도커 컨테이너로 파일 복사 도커 컨테이너에서 다른 도커 컨테이너로도 가능하다. 그간 도커에 대한 푸쉬 및 풀 만했다. 하지만 이런식으로 history를 하게 되면, 해당 이미지에 대한 이력을 확인 할 수 있다. 다른 명령어는 뭐 많이 써서 알고있었지만, 의외로 몰랐던 부분에 대해서 따로 공부를 해봤다. 파일 복사, 이력은 잘 몰랐던 부분이라 따로 정리를 해봤다.
이미지 비밀레이어라는게 존재한다. 이미지는 한개를 받더라도, 레이어는 여러개를 받기 때문에 여러개의 커맨드 라인이 나오게 된다. 이미지는 여러개의 레이어로 나눠서 저장이 된다. 만약에 이미지 A에서 사용중인 레이어들이 있는데 이미지B를 다운받게 되면, 없던 D만 다운을 받게 된다. 한 이미지에 대해 여러 레이어가 있고, 같은 레이어라도 다른 레이어를 사용할 수 있고 같은 레이어를 공유할 수도있다. 그러면 레이어에 대한 확인을 해보자 도커 이미지는 docker images를 통해서, 확인 가능하다. 또한 도커 이미지에 대한 분석 확인은 이렇게 할 수 있다. docker inspect 도커 이미지 저장소 위치를 확인 해보자 docker-info를 치면 도커에 대한 상세 내용이 나온다. Docker Root ..
docker login을 하게 되면, 해당 관련되서 인증정보를 저장하고 체크하고 뭐 등등 사실, 최근에 동료에게 사설 repo 로그인 후 이미지를 풀받아야된다고 가이드 하는도중 비번을 잊어버려서, 혹시나 하고 될까? 했던 방식이 되서 기록용으로 남긴다. 대부분 .docker/config.json 파일에 docker login하면 auth 정보가 담기게된다. docker login을 하게되면 도커 데몬이 이 값을 가지고 로그인을 시도를 자동으로 해주기 때문에 한번 로그인한 repo에 대해서는 다시 정보를 넣지 않아도된다. 그래서, config.json 하위 auth내 내용을 vi편집기로 추가를 해주고 docker daemon을 재시동 해주면 해당 auth에 대한 내용을 데몬이 가지고 있게 되고, docke..
기초적인 내용이지만, 한번 정리하면서 해보자..(옛날 생각도 하면서ㅎㅎ) 1. docker image pull docker pull nginx 2. docker container create docker create -p 80:80 --name nx nginx 3. docker ps -a 생성된 docker container 확인(나는 마리아디비했음) 4. docker start 생성된 컨테이너를 시작 5. docker stop 컨테이너를 멈춤 6. docker rm 컨테이너 삭제 7. docker rmi 도커 이미지 삭제 8. docker restart docker 컨테이너 재시작
1. registry에서 이미지를 풀/푸쉬를 한다. 2. 컨테이너 가져온 이미지 바탕으로 create하고 3. create된 컨테이너를 run하면서 메모리에 컨테이너가 동작된다. docker 에서 run은 create + run의 개념이다. 따라서, docker 에서 run은 create가 필요한 초기1회만 사용하는것이 좋다. (계속 run을 실행하면, create, start해버리기 때문에 불필요한 컨테이너가 겁나 많이 는다.) 이 컨테이너를 중지하고싶으면 stop이라고 하면, 컨테이너가 꺼지고 메모리에서 내려가게되고 rm으로 컨테이너를 삭제 할수 있다. 이미지는 rmi 로 삭제하고.. 컨테이너를 쓰다가 commit하면, 컨테이너 기반으로 이미지를 만들수 있다고 한다. 자.. 라이프 사이클을 명령어로 ..
Docker registry 에 대해서 공부를 해보자 실무에서 써봤지만.. 뭐 한번더 기초적인 내용을 공부해보자 docker image들을 push,pull이 가능한곳이 docker registry라고 한다. 아래 그림을 보면 이해가...좀 더 잘되려나? 도커 퍼블릭 레지스트리 검색 및 확인 브라우저 : https://hub.docker.com/ Docker Hub Container Image Library | App Containerization Deliver your business through Docker Hub Package and publish apps and plugins as containers in Docker Hub for easy download and deployment by mil..
쿠버네티스 : 컨테이너 기반 오픈소스 가상화 프로젝트 기존 애플리케이션과 클라우드 네이티브 애플리케이션과의 차이는 대략적으로 이렇다. 이론을 아는건 지루한 일이지만, 뭔가를 시작하기전에 이론에 대해서 알고 시작하면 조금 더 좋다. 뭐 잘 알다 싶이, 클라우드 네이티브로 하면, 파드 개수를 조절해서 애플리케이션의 개수를 늘리거나 스케일에 좀 더 유연하고 이를 인그레스로 분산하고 뭐 등등 여러가지 장점이 있다. 이론은 귀찮으니, 이정도만 알고 바로 실습 ㄱ
kubectl 명령어 모음이다. 적어두고 유용하게 ...두고두고 사용하자 설명이 필요한 것만 설명을 적어놓겠다. kubectl get all (pods,svc,deployments) kubectl get ing kubectl config view kubectl get pods -o wide (더 많은 내용 조회) kubectl get pod my-pod -o yaml ( 파드의 yaml조회) kubectl get nodes kubectl get -o jsonpath={..spec.containers[*].name}; echo (특정 파드의 컨테이너 이름 조회) 1. kubectl get namespaces 2. kubectl config set-context --current --namespace -> ..
도커는 우선 뭐 잘 알다 싶이 컨테이너 기술이다. Docker 에 대한 기본적인 장점과 구조를 알고싶다면 아래글을 먼저 보고오는 것을 추천한다. https://devboi.tistory.com/472 [Docker] Docker Study 기본 Docker 개념 Docker 는 개발자와 시스템 관리자가 컨테이너 기술을 사용하여 어플리케이션을 개발, 배포 및 실행하기 위한 플랫폼이다. 일반적으로 리눅스에서 사용되는 컨테이너 기술을 사용하여 devboi.tistory.com 우선 다음으로는 Docker의 기본적인 명령어와 Swarm과 관련된 공부를 해보자 1. Docker 기본 명령어 및 기본 지식 docker images : 도커이미지 목록 보기 docker search [이미지 이름] : 도커이미지 검색..
실제로 사용하는 network하위에 ip adress를 적어주면 된다. docker inspect container id 를 적게 되면 해당 아이디를 알수있는데 ipv4가 아니라 다른 값으로도 할수있다. 무튼 정해진 네트워크에서 해당 고정된 컨테이너로 아이피를 고정시킬수있다. 컨테이너간의 통신을 로컬에서 테스트할때 유용한 방법이다. 굳이 외부를 거치지 않고 컨테이너 내부에서 통신할떄는 가능하기 때문이다(network를 같이 쓸때) 이럴때 고정으로두면 , 뭐 굳이 귀찮은작업을 하지 않아도 되서 좋다.