Server 29

(Docker) 알고 있어야 할 상위 10가지 Docker 명령

이 포스팅에서는 docker를 사용하는 개발자라면 꼭 알아야 할 docker 명령어들을 잘 정리한 포스팅이 있어서, 영어 원문을 번역하여 가져오게 되었다. (원문 사이트: https://dev.to/hasanelsherbiny/top-10-docker-commands-you-need-to-learn-47cj) Docker 환경을 구축하기 이전에 Docker 의 특성에 대해 이해하는 내용이 될 것이다. 1 - Docker Run docker run 명령은 Docker 이미지에서 컨테이너를 시작하는 게이트웨이이다. 이미지 이름, 옵션 및 런타임 구성을 지정할 수 있다. $docker run -d -p 8080:80 nginx -d: 분리 모드(백그라운드)에서 컨테이너를 실행한다. -p: 호스트의 포트를 컨테..

Server/Docker 2024.02.16

도커와 Containerization

dev.to사이트를 둘러보다가 Docker 관련하여 일목요연하게 설명되어있는 포스팅이 있어서, 영어 원문을 번역하여 가져오게 되었다(원문 사이트: https://dev.to/hasanelsherbiny/docker-and-containerization-4p7d) Docker 환경을 구축하기 이전에 Docker 의 특성에 대해 이해하는 내용이 될 것이다. 현대 소프트웨어 개발 세계에서 Docker는 애플리케이션이 개발, 배포 및 관리되는 방식을 혁신하는 획기적인 기술로 등장했다. 이 포스팅에서는 Docker의 개념, 이점, 구성 요소 및 소프트웨어 개발 환경에 대한 깊은 영향을 자세히 살펴본다. Containerization이 무엇인가? Containerization을 사용하면 개발자가 애플리케이션을 캡슐..

Server/Docker 2024.02.14

[Linux] vi로 파일 내용 전체 복사 후 붙여넣기

오늘은 vi로 파일 내용을 전체복사 후 붙여넣는 방법을 포스팅하려고 한다. 1. vi로 파일 내용 전체 복사 후 붙여넣기 vi로 파일을 연 후, 아래 명령어로 첫줄로 이동한다. gg // 첫째줄로 이동 아래 명령어로 비주얼 라인 모드로 전환해서 첫째줄을 모두 선택한다 V // 비주얼 라인 모드 그 후 아래 명령어로 맨 아랫줄까지 선택한다 G // 맨 아랫줄로 이동 그런다음, 선택된 내용을 복사한다. y // 복사(yanked -> 확 잡아당기다라는 의미) 복사된 내용은 vi에디터 사용시 아래 명령어로 붙여넣을 수 있다. p // 붙여넣기(paste) 2. putty 프로그램 사용시 파일 내용 복사 및 외부 프로그램으로 붙여넣기 putty프로그램을 사용하여 원격 서버에 접속했을 시, 해당 서버내에 있는 파..

Server/Linux 2023.04.15

[Linux] free 명령어에 대해

1. 개요 free 명령어는 커널에서 사용되는 버퍼와 캐시뿐만 아니라 시스템에서 사용 가능한 물리적 메모리와 스왑 메모리의 총량을 표시한다. free 명령어는 /proc/meminfo에서 메모리 정보를 가져와 분석하여 수집된다. 간단히 말해, 리눅스 시스템에서 전체적인 메모리에 대한 현황을 보여주는 명령어이다. 그럼 free명령어로 볼 수 있는 메모리 정보와 이와 관련된 meminfo의 값들을 알아보자. 2. 사용법 [사용법] $ free [옵션] [옵션] -b, -k, -m, -g : 바이트, 킬로바이트, 메가바이트, 기가바이트 단위로 출력 --tera, --peta : 테라바이트, 페타바이트 단위로 출력 -h, --human : 자동으로 단위를 조정해서 출력 -w, --wide : 와이드 모드로 실행..

Server/Linux 2023.03.25

[Ubuntu] 부팅시 Node.js 프로젝트가 자동 실행되도록 서비스 등록

개요 AWS EC2(Ubuntu) 인스턴스를 만들어 REST API 서버를 구축하여 사용하던 중, 가끔 서버에 렉이 발생해서 REST API가 응답하지 않을때가 있었다. 그래서 가끔 AWS 콘솔에서 인스턴스를 재부팅시켜줄때가 있었으나, 부팅 후 직접 진입해서 Node.js는 수동으로 실행시켜주는 작업을 계속 반복할수 없었으니.. 서비스로 등록하여 부팅시 자동으로 뜨도록 설정해놓고자 하였다. 구축 환경 Ubuntu 18.04 Node.js 14 1. 서비스 파일 작성 서비스를 등록하기에 앞서, node.js 프로젝트 폴더에 node.js 프로그램을 실행할 수 있도록 아래와 같이 간단한 쉘 스크립트를 만들어 주었다. [start.sh] node --loader ts-node/esm ./index.ts 그런 ..

Server/Linux 2023.02.09

kubeconfig파일을 사용하여 클러스터 접근 구성

개요 kubeconfig사용법을 찾아보다가, kubernetes공식 사이트에서 제공하는 가이드 보았고, 이를 직접 번역하여 포스팅하게 되었다. (원문 링크: https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/) kubeconfig 파일을 사용하여 클러스터 접근 구성 kubeconfig 파일을 사용하여 클러스터, 유저, 네임스페이스 및 인증 메커니즘 정보를 구성해보자. kubectl 명령줄 도구는 kubeconfig 파일을 사용하여 클러스터를 선택하고 API 서버와 통신하는 데 필요한 정보를 찾는다. 참고: kubeconfig파일은 클러스터에 대한 액세스를 구성하는 데 사용되는 파일을 호출한다. 이것은 구..

Server/Kubernetes 2022.12.17

쿠버네티스(Kubernetes) Service란?

1. 서비스(Service)란? 쿠버네티스 서비스는 파드들을 통해 실행되고 있는 애플리케이션을 네트워크에 노출시키는 가상의 컴포넌트이다. 쿠버네티스 내부의 다양한 객체들이 애플리케이션과, 그리고 애플리케이션이 다른 외부의 애플리케이션이나 사용자와 연결될 수 있도록 도와주는 역할을 한다. 2. 쿠버네티스에서 서비스를 사용하는 이유 클러스터 안에서 애플리케이션을 구동시키는 데에 쓰이는 파드들의 반영속성인(ephemeral)특성 때문에 서비스를 사용하게 된다. 쿠버네티스에서의 파드는 무언가가 구동 중인 상태를 유지하기 위해 동원되는 일회성 자원이기 때문에, 언제든 다른 노드로 옮겨지거나 삭제될 수 있다. 또한 파드는 생성될 때마다 새로운 내부 IP를 받게 되므로, 이것만으로 클러스터 내/외부와 통신을 계속 유..

Server/Kubernetes 2022.12.17

쿠버네티스(Kubernetes) Deployment란?

지난 포스팅에서는 쿠버네티스의 파드(Pod), 레플리카셋(ReplicaSet)에 대해 알아보았다. 오늘은 이를 아우르는 디플로이먼트(Deployment)에 대해 정리해보고자 한다. 1. 디플로이먼트란? 쿠버네티스의 디플로이먼트(Deployment)는 애플리케이션에 선언적 업데이트를 제공하는 쿠버네티스 리소스 개체이다. 디플로이먼트를 통해 애플리케이션에 사용할 이미지, 유효 포드의 수, 업데이트 방식과 같은 애플리케이션 라이프사이클을 정의할 수 있다. 쿠버네티스 Object는 사용자가 원하는 클러스터 워크로드의 형태를 쿠버네티스 시스템에 알리는 방법이다. Object가 생성되면 클러스터가 작동하여 Object를 유지하므로 쿠버네티스 클러스터를 원하는 상태로 둘 수 있다. 쿠버네티스에서는 각 Object를 ..

Server/Kubernetes 2022.12.15

쿠버네티스(Kubernetes) ReplicaSet이란?

1. 레플리카셋(ReplicaSet) 이란? 레플리카셋의 목적은 레플리카 파드 집합의 실행을 항상 안정적으로 유지하는 것이다. 이처럼 레플리카셋은 보통 명시된 동일 파드 개수에 대한 가용성을 보증하는데 사용한다. 예를 들어, 5개의 파드를 항상 실행하도록 설정하면 이후 1개가 삭제되면 다시 파드 1개가 실행되어 5개를 유지할 수 있도록 해준다. 마찬가지로 노드 장애 등의 이유로 포드를 사용할 수 없다면 다른 노드에서 포드를 다시 생성하여 5개를 유지하도록 한다. 2. 레플리카셋을 사용하는 이유 쿠버네티스의 기본 단위인 Pod는 여러 개의 컨테이너를 추상화해 하나의 애플리케이션으로 동작하도록 만드는 훌륭한 컨테이너 묶음이다. 그러나 YAML에 포드만 정의해 생성하게 되면 이 Pod의 생애 주기(Lifecy..

Server/Kubernetes 2022.12.13

쿠버네티스(Kubernetes) Pod란?

1. 포드(Pod)란? 쿠버네티스 포드는 Linux 컨테이너를 하나 이상 모아 놓은 것으로, 쿠버네티스 애플리케이션의 최소 단위이다. 강하게 결합된 여러 개의 컨테이너로 구성된 포드도 있고(고급 활용 사례), 단일 컨테이너로만 이루어진 포드도 있다.(더 일반적인 활용 사례). 컨테이너를 쿠버네티스 포드로 그룹화하는 이유는 아래의 설명과 같이 리소스를 더 지능적으로 공유하기 위해서이다. 쿠버네티스 시스템에서는 같은 포드에 속한 컨테이너끼리 동일한 컴퓨팅 리소스를 공유한다. 이러한 컴퓨팅 리소스를 쿠버네티스에 풀링하여 클러스터를 만들고, 이를 바탕으로 더 강력하고 지능적으로 분산된 애플리케이션 실행 시스템을 제공할 수 있다. 쿠버네티스 포드의 장점을 이해하는 데 가장 중요한 요소가 아래에 정리되어 있다. 하..

Server/Kubernetes 2022.12.11
반응형