일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Pinpoint
- docker
- 공부
- 티스토리챌린지
- golang
- CKA
- PETERICA
- aws
- 정보처리기사 실기 기출문제
- AWS EKS
- CloudWatch
- Spring
- AI
- Java
- Linux
- Kubernetes
- kotlin querydsl
- mysql 튜닝
- 정보처리기사실기 기출문제
- tucker의 go 언어 프로그래밍
- 코틀린 코루틴의 정석
- minikube
- 기록으로 실력을 쌓자
- go
- kotlin
- 오블완
- CKA 기출문제
- Elasticsearch
- APM
- kotlin coroutine
- Today
- Total
목록DevOps/Docker (46)
피터의 개발이야기

ㅁ 들어가며ㅇ 도커 컨테이너의 내부 통신에 대해서 고민하면서 도커 네트워크의 구조에 대해서 공부하게 되었다.ㅇ 이 번 글의 정리 목표는 도커 네트워크의 구조를 이해하고 네트워트 설정의 특성을 이해하여 적절한 네트워크를 구성을 제시하는데 있다. ㅁ 도커 네트워크의 구조도커 네트워크는 host, Bridge, Container의 관계이다. 가정 홈 네트워크와 비교하면 더 쉽게 이해할 수 있다. Internet을 여러 장비가 사용하기 위해서는 공유기가 필요하다. ㅇ eth0 실제 IP가 할당되는 host 네트워크 인터페이스이다. 가정에 제공되는 Internet은 공유기를 통해 다른 장비와 연결된다. ㅇ docker0 도커가 설치될 때, 기본적으로 구성되는 브리지이다. host 네트워크와 containe..

ㅁ 들어가며 [kafka] kafka 모니터링 방법(feat. Prometheus/Grafana)을 작업하면서 colima를 설치하여 no specific platform 오류를 해결한 적이 있다. 이번 들에서는 보다 간단한 해결 방법인 platform 옵션에 대해서 기록한다. ㅁ 에러 내용 # kafka single 실행 시 에러 발생 $ docker-compose -f zk-kafka-single-node-stack.yml up -d WARN[0000] The "KAFKA_HEAP_OPTS" variable is not set. Defaulting to a blank string. [+] Running 2/7 ⠼ Network kafka-platform Created 0.4s ⠼ Container p..

ㅁ 들어가며 Docker Desktop의 이용약관을 보면 대기업에서는 이제 무료로 사용할 수 없게 되었습니다. 그리고 Intel 칩에서만 가동되었던 오라클 컨테이너의 경우 M1에는 돌아가지 않는 문제점도 있습니다. 그래서 Intel과 M1을 둘다 지원해주는 Colima를 설치하는 과정을 정리하였습니다. ㅁ Colima의 특징Intel 및 M1 Mac 지원간단한 CLI 인터페이스Docker 및 Containerd 지원포트 포워딩볼륨 마운트쿠버네티스다중 인스턴스최소한의 설정으로 macOS에서 컨테이너 런타임을 제공합니다. ㅁ Homebrew로 설치brew install colima ㅁ Colima 실행# VM을 4CPU 및 8GiB 메모리로 실행$ colima start --cpu 4 --memor..

ㅁ 들어가며 ㅇ 테스트를 위해 샘플 API를 node.js로 띄워야 한다. ㅇ 서버를 실행하는 방법을 3가지로 정리하였다. - docker run : docker run 명령어를 통해 생성 - dockerfile : 기본 이미지에 install까지 마친 이미지를 생성하여 docker run을 수행 - docker-compose: 베이스 이미지에서 install과 run 명령어를 정의하고 up down으로 리소스 관리 효율적 ㅇ 서버 소스를 다운받고 가장 기본적인 docker run을 이용하는 방법에 대해서 알아보자. ㅁ 서버 소스 다운로드 # git 소스다운로드 $ git clone https://github.com/peterica/flutter_tutorial.git # 소스 폴더로 이동 $ cd ./..

ㅁ 들어가며 ㅇ Docker Compose 작성 중 여러 명령어를 실행하는 방법을 정리함. ㅁ 단일 명령 실행 version: "3" services: server: image: alpine command: sh -c "echo 'baeldung'" ㅇ docker-compose.yml 파일에서는 alpine Docker 이미지에서 단일 echo 명령을 실행하고 있다 . ㅁ 여러 명령 실행 - && 연산자 version: "3" services: server: image: alpine command: sh -c "echo 'baeldung' && echo 'docker'" ㅇ && 연산자 사용하여 두가지 명령을 실행한다. ㅁ 여러 명령 실행 - | 운영자 version: "3" services: serv..

ㅁ 들어가며 docker를 관리하기 위해서 docker cli 혹은 Docker desktop을 사용할 것입니다. ㅇ 터미널에서 docker cli를 통해 docker 컨테이너를 확인하는 모습. ㅇ Docker Desktop을 통해 Mac 어플리케이션으로 docker 컨테이너를 관리하는 모습 외부에서 도커 컨테이너를 관리하기 위해서는 ssh 접속을 통해 docker cli를 사용하였는데, Dokémon을 통해 외부에서 웹을 통해 관리를 할 수 있습니다. 이번 글은 Dokémon을 설치하고 그 기능에 대해서 정리를 하였습니다. ㅁ Dokémon이란? ㅇ Dokémon는 웹 기반 도커 컨테이너 관리 GUI입니다. ㅇ 도커 컴포즈 파일을 배포하고, 컨테이너를 시작/중지하고, 사용하지 않는 이미지를 삭제하고,..

ㅁ Docker 로컬에서 컨테이너로 파일 복사 # 로컬 -> 컨테이너 파일복사 $ docker cp pray.zip webserver:/usr/share/nginx/html/. # 컨테이너 접속 $ docker exec -it webserver bash # 파일전송 확인 root@394d3afe91dd:/# cd /usr/share/nginx/html/ root@394d3afe91dd:/usr/share/nginx/html# ls 50x.html index.html pray.zip ㅁ Docker 컨테이너에서 로컬로 파일 복사 # 컨테이너의 50x.html을 로컬로 복사 $ docker cp webserver:/usr/share/nginx/html/50x.html 50x.html # 파일전송 확인 $ l..

ㅁ 들어가며 [Jenkins] Docker 기반 Jenkins quick start examples을 맥북미니(m1) 환경에서 실행하면서 err: exec: "docker-credential-osxkeychain" 에러가 발생하여 해결하는 과정을 정리하였습니다. ㅁ 에러내용 error getting credentials - err: exit status 1, out: `error getting credentials - err: exec: "docker-credential-osxkeychain": executable file not found in $PATH, out: ``` ㅁ 해결방안 ㅇ docker 이슈 사항에 비슷한 에러발생 이력이 있어서 해당 페이지를 검토하였습니다. ㅇ brew를 통해 docke..

ㅁ 개요 Docker 호스트 시스템에서 리소스 사용을 제한해야 하는 경우가 많습니다. 이번 글에서는 Docker 컨테이너의 메모리 및 CPU 제한을 설정하는 방법을 정리하였습니다. ㅁ 메모리 제한하기 $ docker run -m 512m nginx ㅇ 컨테이너가 사용할 수 있는 메모리를 512MB로 제한합니다. $ docker run -m 512m --memory-reservation=256m nginx ㅇ 예약이라는 소프트 제한을 설정할 수도 있습니다. ㅇ docker가 호스트 시스템의 메모리가 부족한 경우를 대비하여 예약 활성화를 할 수 있습니다. ㅁ CPU 제한하기 ㅇ 기본적으로 호스트 시스템의 컴퓨팅 성능에 대한 액세스는 무제한입니다. ㅇ CPUs 매개변수를 사용하여 CPU 제한을 설정할 수 있습..

ㅁ 개요 docker 명령어를 쓰면서 복잡한 명령어의 체계는 잦은 실수를 발생할 수 있습니다. docker 작업의 효율성과 포퍼먼스를 위해 명령어 자동완성 기능은 필수 입니다. 실수를 줄이고 빠르게 명령어를 완성하여 작업의 속도를 향상시켜 줍니다. 이번 글은 docker의 자동완성 기능을 추가하는 과정을 정리하였습니다. ㅁ Docker 자동기능 설치여부 판단 ㅇ docker 시 위의 화면처럼 디덱토리의 파일 목록이 보인다면 자동완성 기능이 설치 되어 있지 않습니다. ㅁ zsh plugin 설정 $ vi ~/.zshrc ~~~ plugins=(... docker docker-compose ) ~~~ # 편집완료 후 적용 $ zsh ㅇ .zshrc의 문서에서 plugins에 docker docker-comp..