본문 바로가기
728x90

Infra6

[Docker] 🐋 도커 :: Volume 📍 Volume과 Copy의 차이점Copy의 경우, 소스 코드를 변경할 때 마다 이미지부터 다시 변경해줘야하는 번거로움 발생한다.이를 보완하기 위해서 Volume을 사용하는데, 로컬에 있는 파일들을 참조(Mapping)해서 반영해준다.       📍 Volume 사용해서 어플리케이션 실행하는 방법docker run -p 5000:8080 -v /usr/src/app/node_modules -v $(pwd):/usr/src/app # 호스트 디렉토리에 node_module은 없기에 컨테이너에 맵핑하지 말라고 하는 명렁어-v /usr/src/app/node_modules# pwd 경로에 있는 디렉토리 혹은 파일을 /usr/src/app 경로에서 참조(워킹 디렉토리에 맵핑) -v $(pwd):/usr/sr.. 2025. 4. 2.
[Docker] 🐋 도커 :: Compose란 무엇인가? 📍 Docker Compose란 무엇인가컨테이너 여럿을 띄우는 도커 애플리케이션을 정의하고 실행하는 도구(Tool for defining and running multi-container Docker applications) 컨테이너끼리 통신을 할 수 없기에 에러가 발생함.해당 에러를 해결할 수 있게 멀티 컨테이너에서 쉽게 네트워크를 연결 시켜줄 수 있게 해준 것이 도커 컴포즈이다.웹 서비스는 일반적으로 프론트엔드 서버, 벡엔드 서버, 데이터베이스 서버로 구성된다.따라서 각 서버를 docker container로 연결한 뒤 docker compose를 사용하여 해당 컨테이너들을 관리한다.  📍 Docker Compose 파일 작성 yaml 파일 : YAML ain't markup languge의 약자.. 2025. 4. 2.
[Docker] 🐋 도커 :: 맥북, 도커 설치 (M1) 🐳 도커 설치도커가 알아서 가상머신(vmware)을 설치하고 그 위에 리눅스를 설치해줌⬇️ 다운로드 링크https://docs.docker.com/desktop/release-notes/각자에게 맞는 운영체제 선택 후 다운로드 🐳  rosetta 설치rosetta를 설치하기 위한 명령어softwareupdate --install-rosetta  동의하냐는 물음에 : a 입력하면 성공적으로 설치 완료되었다는 문구 뜸 설치 후 도커를 켜면 이런 화면이 뜸그리고 권장되는 버전으로 설치 후 로그인해주면 된다   마지막으로 도커가 제대로 설치 되었는지 터미널에서 docker images 명령어 쳐주고 확인 2025. 3. 31.
[Infra] Linux 환경에 대한 이해와 고찰 필자는 현재 1년차 주니어 개발자이고, 다양한 경험을 하게 되었던 2024년입니다.현재 프로젝트에서 6개월째 다양한 솔루션을 구축하면서, 직접 솔루션을 만들고 필요한 서버를 직접 온프레미스 환경에 구축하면서 얻은 인사이트들을 기록할 예정입니다. 리눅스라는 환경에서 처음으로 개발을 하면서 배우고 머리를 박아가며 배웠던 디버깅 경험도 더불어 작성해 볼 예정입니다.1. What is Linux?리눅스는 오픈 소스 운영 체제로, 1991년 리누스 토르발스가 개발을 시작했습니다. 유닉스 계열의 운영 체제로, 다양한 디바이스에서 사용되며 안정성과 보안성이 뛰어납니다.오픈 소스: 누구나 소스 코드를 볼 수 있고 수정할 수 있습니다.다양한 배포판: Ubuntu, CentOS, Fedora 등 다양한 버전이 존재합니다... 2025. 3. 28.
[Infra] Linux 유저 권한 설정 및 그룹 세팅 필자는 현재 온프레미스 환경의 서버에서 업무를 진행 중이다. OS는 Rocky linux 8을 사용중이다. 그리고 폐쇄망 환경이라, 형상관리를 직접 컨테이너 띄워 운용 중이다. Gitea라는 무료 오픈소스를 사용 중이고, 사용법은 github, gitlab들과 유사하다. (gitlab enterprise 사용하면 좋겠다..)며칠 전에 프로젝트 도중에 큰 사고가 발생한 적이 있다. 서버 내의 바로 형상관리 데이터 모두를 팀원이 실수로 날려버린 것... (리눅스의 rm -rf 명령어를 통해 디렉토리를 통째로 날려버렸기에 여러 복구 방법을 시도해 보았지만, 모두 실패했다. 리눅스 파일 삭제 복구는 추후 포스팅 예정) 이런 사건들로 인하여, 나는 서버 주요 데이터 프로젝트 DB, 형상 관리 데이터 등 주요 데.. 2025. 3. 28.
왜 우리는 NGINX를 사용하는가? 1. 웹서버란 무엇인가?웹서버는 클라이언트가 요청한 웹페이지나 리소스를 제공하는 역할을 한다. 웹 서버는 주로 HTTP, HTTPS 프로토콜을 사용하여 웹 브라우저와 통신하며, 웹사이트의 텍스트, 이미지, 스크립트와 같은 콘텐츠를 전송한다. 사용자가 웹 브라우저에서 URL을 입력하면, 해당 요청이 웹 서버로 전달되어 그 요청에 맞는 데이터를 응답하는 구조이다. 이때 웹 서버는 HTML 페이지뿐만 아니라, API를 통해 다양한 데이터를 제공하는 역할도 수행할 수 있다.(이미지: 클라이언트-서버 간 통신 과정 다이어그램)2. Apache와 NginX의 차이점Apache와 NginX는 대표적인 웹서버 소프트웨어로, 각자 고유한 특징을 가지고 있다.Apache: Apache는 전통적인 프로세스 기반 아키텍처를 .. 2025. 3. 28.
728x90
반응형