일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- stackdriver exporter 설치
- git
- github
- kubectl 설치
- 서비스 계정 키 설정
- minikube 설치 및 실행
- 방화벽 오픈
- dockerfile로 stackdriver-export이미지 생성
- aws-nuke
- GCP 모니터링
- Prometheus 서버 설치
- prometheus.yml 파일 설정
- compose.yml로 stackdriver-export 서비스 설정
- 리소스전체삭제
- 정적 웹 사이트 호스팅
- github 사용법
- prometheus dockerfile
- prometheus 서버 서비스등록
- GCP VM
- vs code로 ssh 접속
- ADC 사용자 인증
- Prometheus 서버 설정
- 리소스삭제
- 포트 9255 설정
- stackdriver exporter
- 애플리케이션 기본 사용자 인증 정보
- prometheus 연동
- 스위치 4대 기능
- gke 클러스터 액세스 설정
- permission denied 에러 발생
- Today
- Total
My __ 노트
[Docker] 네트워크 종류 및 사용방법 본문
Single host networking은 bridge, host, none 네트워크 드라이버가 있으며
Multi host networking은 overlay 네트워크 드라이버가 있는데 오케이스트레이션에서 많이 사용됩니다.
아래 간단하게 네트워크 목록 조회 및 사용자 정의 네트워크 생성 & 지정에 대해 기재해 보려고 합니다.
목차
▶ 네트워크 목록 조회
▶ network 옵션 - 미지정
▶ network 옵션 - 사용자 정의 네트워크 지정
▶ 네트워크 목록 조회
docker network ls
----------------------------------------------
NETWORK ID NAME DRIVER SCOPE
22d98b37ccb2 bridge bridge local
288ec8ea8122 host host local
50b5c8a8a504 mon_default bridge local ===> 컨테이너 실행 시 네트워크 설정 없으면 기본으로 생성되는 네트워크
fe69226fd28a none null local
none 네트워크 : 네트워크 설정이 필요 없는 컨테이너 생성 시 사용됩니다.
docker run -it --net none ubuntu:focal
host 네트워크 : 호스트 네트워크 사용이 필요할 때 사용하며 포트 포워딩을 하지 않아도 바로 외부에서 접속이 가능합니다.
docker run -d --network=host grafana/grafana
bridge 네트워크 : default bridge 네트워크가 있고 사용자 정의 네트워크가 있습니다.
[ 사용자 정의 네트워크 생성 예시 ]
# 이름이 test 인 bridge 네트워크 생성
docker network create --driver=bridge test
# 위에서 생성한 test 네트워크를 사용하여 nginx 컨테이너를 설정
docker run -d --network=test --net-alias=hello nginx
▶ network 옵션 - 미지정
작업 디렉터리가 다른 환경에서 컨테이너를 올리면 네트워크 항목도 계속해서 추가되는 것을 확인할 수 있습니다.
▶network 옵션 - 사용자 정의 네트워크 지정
compose.yml 파일에서 네트워크 default 설정에 기존 네트워크 네임 작성하여 지정할 수 있습니다.
version: '3.8'
services:
stackdriver-export:
container_name: test-gcp-mon01
image: gcp-stackdrive-export-img
restart: unless-stopped
volumes:
- ./keyfile:/keyfile
environment:
GOOGLE_APPLICATION_CREDENTIALS: "/keyfile/service_account.json"
ports:
- "10001:9255"
user: root
command:
"--google.project-id=프로젝트id
--monitoring.metrics-type-prefixes='compute.googleapis.com/instance/cpu/utilization,agent.googleapis.com/disk/percent_used,agent.googleapis.com/memory/percent_used'"
networks:
default:
external: true
name: mon_default
🚨 에러 발생 : WARN[0000] network default: network.external.name is deprecated. Please set network.name with external: true
🔍 원인 분석 : 확인해 보면 실제로 지정하려는 네트워크에 컨테이너가 올라갔으므로 이슈 사항은 아니나 해당 문구가 발생하지 않게 하려면 external: true를 추가하면 됩니다.
### before ###
networks:
default:
external:
name: mon_default
------------------------------------
#### 아래와 같이 설정하면 해당 문구 발생하지 않음 ###
networks:
default:
external: true
name: mon_default
'Docker' 카테고리의 다른 글
[ Docker ] 커스텀 image 생성 / docker hup 에 업로드 해보기 (0) | 2023.11.30 |
---|---|
[Docker] 컨테이너 포트 연결 - 포트포워딩 (0) | 2023.11.15 |
[Docker] 로그 저장 경로 & 용량 제한 (0) | 2023.11.15 |
[Docker] 볼륨(volume) 종류와 사용 방법 (0) | 2023.11.15 |
[Docker] Compose 개념 및 명령어 (0) | 2023.11.14 |