도커 컨테이너 내부에서 호스트 머신 서비스에 접근해야 할때 이 옵션은 Docker 컨테이너 내부에서 호스트 머신에 접근할 수 있게 해주는 중요한 네트워킹 설정입니다.1. `host.docker.internal`은 Docker가 제공하는 특별한 DNS 이름으로, 컨테이너에서 호스트 머신을 참조할 때 사용됩니다.2. `host-gateway`는 호스트 머신의 게이트웨이 IP 주소를 자동으로 할당합니다.실제 사용 예시:- 컨테이너 내부에서 실행되는 애플리케이션이 호스트 머신에서 실행 중인 다른 서비스(예: 데이터베이스)에 접근해야 할 때- 호스트에서 실행되는 API나 서비스를 컨테이너 내부에서 호출해야 할 때이 설정이 없다면, 컨테이너는 기본적으로 격리된 환경이기 때문에 호스트 머신의 서비스에 접근하기 어려..
Docker
원하는 아이디에 모든 권한 부여하기docker-compose exec mysql bashmysql -u root -pGRANT ALL PRIVILEGES ON *.* TO 'custom_user'@'%';FLUSH PRIVILEGES; 코드 설명docker-compose exec mysql bashDocker Compose로 실행 중인 서비스 중 'mysql' 컨테이너에 bash 셸로 접속하는 명령어입니다.mysql -u root -pMySQL 서버에 root 사용자로 접속하는 명령어입니다.-p 옵션을 사용하면 비밀번호를 입력하라는 프롬프트가 나타납니다.GRANT ALL PRIVILEGES ON *.* TO 'custom_user'@'%';'custom_user' 사용자에게 모든 데이터베이스(첫 번째 *..
app:delegated는 Docker에서 볼륨을 설정할 때 사용하는 옵션으로, 파일 동기화의 성능을 최적화하기 위한 설정입니다.기본 구조volumes:- .:/var/www/app:delegated.: 로컬 머신의 현재 디렉터리(호스트 경로)를 의미합니다./var/www/app: 컨테이너 내부에서 위 디렉터리를 연결할 경로입니다.:delegated: 볼륨 동기화 전략을 지정하는 옵션입니다.:delegated 옵션의 의미의도: 데이터 동기화의 우선순위를 호스트(로컬 머신)보다 컨테이너 내부의 동작에 두는 설정입니다.주요 특징:컨테이너가 우선: 컨테이너가 데이터를 로컬 머신보다 더 빠르게 읽고 쓸 수 있도록 설계되었습니다.비동기 동기화: 로컬 머신으로의 데이터 업데이트는 비동기로 수행됩니다. 즉, 컨테이너..
라라벨 프로젝트를 다운로드 하기 위해서 composer 를 이용해서 다음과 같이 명령어로 생성한다.composer create-project laravel/laravel myfirstlaravel Composer란? 설치 및 실행하기 위와 같은 명령어를 실행하기 위해서는 composer 가 설치되어 있어야 한다. docker 를 이용하면 composer 설치없이 간단하게 원하는 폴더에 설치할 수 있다. docker-compose.ymlservices: composer: image: composer:latest container_name: laravel_composer volumes: - ./src:/var/www/html w..

Dockerfile 문서를 만들어서 터미널에서 docker build 명령어를 실행하면 이미지가 생성된다. Dockerfile 은 이미지를 생성하는 방법에 대한 기술 문서이다. 이 문서를 실행하는 명령어는 `docker image build` 이다.생성된 이미지는 `docker container run` 명령어를 통해서 실행된다. Dockerfile 기본구조생성하기touch Dockerfile 작성하기FROM node:12.18.4RUN npm install -g http-serverWORKDIR /home/node/appCMD ["http-server", "-p", "8080", "./public"] - RUN: 이미지를 생성하는 과정에서 실행되는 명령어- CMD: 만든 이미지에서 컨테이너가 만들어져 ..
1. 베이스 이미지8.2-fpmDebian 기반 이미지를 사용합니다.일반적으로 다양한 소프트웨어와 라이브러리를 지원하며 더 많은 패키지를 기본적으로 사용할 수 있습니다.8.2-fpm-alpineAlpine Linux 기반 이미지를 사용합니다.Alpine은 경량화를 목표로 설계되었으며, 기본적으로 크기가 매우 작습니다. (약 5MB)2. 이미지 크기8.2-fpm크기가 상대적으로 큽니다. 다양한 기능과 라이브러리가 포함되어 있기 때문입니다.용량: 보통 20MB~50MB 이상.8.2-fpm-alpine크기가 훨씬 작습니다. 불필요한 패키지를 제외하고 최소한의 라이브러리만 포함되어 있습니다.용량: 약 5MB~10MB 정도.3. 사용 목적 및 성능8.2-fpm복잡한 애플리케이션을 개발하거나 많은 종속성을 가진 환..

도커에 Nginx + Laravel 를 실행시키는 가장 기본 형태의 도커 파일에 대해서 알아본다.필수사항1. docker 설치https://docs.docker.com/engine/install/ 2. composer 설치https://getcomposer.org/ 3. docker compose 설치https://docs.docker.com/compose/install/ composer 가 설치되어 있다면 도커홈에서 Docker Desktop 만 설치하면 됨. GitHub 에서 다운로드 하는 경우1. local PC 에서 실행하기git clone https://github.com/ssh521/laravel-nginx-docker.git laravel-nginx-dockercd laravel-ngi..