🔐 Docker에서 DB 네트워크를 따로 분리하는 이유와 구조목차네트워크를 분리하는 이유예시: n8n → QuestDB 접근, reverse_proxy는 차단Docker Compose 예제요약 표마무리1. 네트워크를 분리하는 이유Docker 환경에서는 보안과 구조적 명확성을 위해 DB 컨테이너를 별도의 네트워크에 두는 경우가 많습니다.이유는 다음과 같습니다:보안 분리 (Security Isolation)DB를 외부에 노출하지 않고, 특정 서비스만 접근 가능하게 함.접근 제어 (Access Control)DB 네트워크에 연결된 서비스만 DB에 접근하도록 제한.트래픽 구분 및 관리서비스 간 트래픽을 구분하여 로깅, 모니터링, 프록시 적용이 쉬움.내부 DNS 분리Docker 네트워크는 자체 DNS를 가지고 ..
Docker
conf의 CORS 관련 블록 전체add_header, proxy_hide_header, proxy_set_header 각각 안에 들어가는 모든 값의 의미 정리 🔍 1. add_header: 클라이언트 응답용 CORS 헤더add_header 'Access-Control-Allow-Origin' $allowed_origin always;Access-Control-Allow-Origin어떤 Origin(도메인)에서 온 요청을 허용할지 명시$allowed_origin미리 set 해둔 변수 (예: https://yourdomain.com)🔒 * 대신 정확한 도메인을 지정해야 쿠키/토큰 허용 가능always오류 응답(4xx/5xx)에도 헤더를 포함시킴 add_header 'Access-Control-Al..
docker restart 📌 chown과 chmod의 의미둘 다 파일 및 디렉토리의 권한을 설정하는 명령어인데, 각각의 역할이 다릅니다.1️⃣ chown (Change Owner - 소유자 변경)chown은 파일이나 디렉토리의 소유자(Owner)와 그룹(Group)을 변경하는 명령어입니다.✅ 사용법bash복사편집chown [소유자]:[그룹] 파일_또는_디렉토리 ✅ 예제sudo chown -R 10001:0 /var/lib/docker/volumes/###_mssql_v2_volume/_data🔹 10001:0 → 10001(사용자 ID, 즉 mssql)이 소유자가 되고, 0(그룹 ID, 즉 root)이 그룹이 됩니다.🔹 -R → 재귀적(Recursive) 으로 적용, 즉 해당 디렉토리뿐만 아니라 ..
MSSQLhttps://oingdaddy.tistory.com/285 Docker 환경에서 MSSQL 설치 및 기본설정하기빠르게 MSSQL 환경을 구성해야 할 일이 생겼다. Docker가 있어서 이제 이런건 정말 간단하게 해결할 수 있다. Docker를 설치하는것은 이 글을 참조하도록 하자. Docker Windows 에 설치하기 지난번에는 linuoingdaddy.tistory.com MongoDBMongoDBCompass에서 연결 확인URL : mongodb://useName:Password@IP:port/ https://blog.naver.com/n_cloudplatform/223146716115 FTP ServerFileZilla에서 확인
--restart=unless-stopped 옵션은 Docker 컨테이너의 자동 재시작 정책을 설정하는 데 사용됩니다.🔹 --restart=unless-stopped 의미docker run -itd -p 4000:4000 --restart=unless-stopped ###_api위 명령어에서 --restart=unless-stopped는 다음과 같은 동작을 합니다:✅ 컨테이너가 자동으로 재시작됨Docker가 재부팅되거나, 컨테이너가 예기치 않게 종료될 경우 자동으로 재시작됩니다.❌ 수동으로 docker stop 명령어로 중지하면 재시작되지 않음사용자가 직접 docker stop ###_api로 중지한 경우, 다시 실행되지 않습니다.하지만 Docker를 재시작해도 자동으로 실행되지 않음.🔹 --rest..
nano, vim, vi는 모두 Linux/Unix 환경에서 사용하는 텍스트 편집기입니다. 각 편집기의 특징과 차이점을 정리해 드리겠습니다.🔹 1. nanonano filename✅ 특징:가장 간단한 텍스트 편집기초보자 친화적 (GUI 느낌이 있음)하단에 단축키 안내가 표시됨단축키 기반 (마우스 사용 가능)모드 없음 (즉시 입력 가능)🔹 주요 단축키:기능단축키저장 (Write Out)Ctrl + O종료 (Exit)Ctrl + X잘라내기Ctrl + K붙여넣기Ctrl + U검색Ctrl + W🔹 언제 사용하면 좋을까?Vim이나 Vi가 너무 복잡할 때빠르게 파일을 수정해야 할 때초보자나 GUI 환경에 익숙한 사용자를 위한 편집기🔹 2. vivi filename✅ 특징:Unix 시스템에서 가장 오래된 기본..
docker run 명령어에서 -d와 -itd의 차이점을 설명해 드리겠습니다.1️⃣ -d 옵션만 사용 (docker run -d -p ...)docker run -d -p 4000:4000 ###_api✅ 특징:-d (--detach): 컨테이너를 백그라운드 모드에서 실행함실행 후 터미널에서 빠져나와도 컨테이너가 계속 실행됨컨테이너의 로그를 보려면 docker logs 을 사용해야 함컨테이너에 직접 들어가려면 docker exec -it /bin/bash 또는 docker attach 을 사용해야 함🔹 사용 예시:일반적으로 서버 애플리케이션(Nginx, API 서버, DB 등) 을 실행할 때 사용(즉, 백그라운드에서 계속 실행되어야 하는 경우)2️⃣ -itd 옵션 사용 (docker run -itd ..
아 ./gradlew 있는데 자꾸 없다고함..개행문제?라고 함.../gradlew 들어가서 맨 마지막 내려서 빈 줄이 있다면 지우자...아주 잘된다...... 감사합니다..https://splendidlolli.tistory.com/698 [windows / docker / java] ./gradlew: not found✨ ./gradlew: not found chmod +x를 해도 gradlew를 인식하지 못했다. 해결하던 중 캐리지리턴이 문제라는 글을 발견했다 ㅇ_ㅇ! 그래서 gradlew를 열어보니까 마지막에 빈 줄 하나가 있었는데, 아싸리 빈 줄splendidlolli.tistory.com
프론트엔드 배포 준비물1. vm 2. docker 3. git(선택)4. front source 5. node.js6. nginx 해야할 일1. 클라우드 컴퓨팅을 대여한다2. 클라우드에 도커를 설치한다.3. 깃을 설치한다. (선택)4. 프론트엔드 소스를 받아온다.5. 도커를 이용해서 nginx 를 사용해 화면을 배포한다. 그림 한 장 요약 Docker + GCP 활용한 프론트 배포 과정#1 GCP 환경 설정1. VM 인스턴스 생성 (= AWS EC2 인스턴스 생성)1-1.Google Cloud 가입https://cloud.google.com/products/compute?hl=ko https://cloud.google.com/products/compute?hl=ko cloud.google.com 1..
애플리케이션 배포를 위한 컨테이너 가상화(Docker 컨테이너) Virtualization Docker Virtualization Docker Image한 서버에서 여러 개의 컨테이너를 실행할 수 있다.💡 Image컨테이너가 실행에 필요한 설정값/정보를 가지고 있는 것💡 Registry이미지가 저장될 수 있는 저장소.Public Registry로 많이 사용되는 사이트로를 Docker Hub 사이트가 있다.Private Registry를 운영할 수도 있다. 간단한 서버를 하나 기동해서 Private Registry를 운영할 수도 있다. Dockerfile -p 3306:3306-p : 포트 포워딩을 하겠다앞 3306 : 호스트 pc에서 접근하고자 하는 포트번호뒤 3306 : 컨테이너에..