분류 전체보기 103

오프라인 상태의 PC의 commit 내역들을 github에 push 하는 방법

.git 폴더란?Git이 코드의 변화를 추적하기 위한 모든 정보를 담고 있는 폴더때문에, 서로 다른 위치에 동일한 .git 폴더가 존재한다면 각각의 위치에서 git commit의 기록이 동일한 걸 확인할 수 있다.상황ex) 오프라인 상태의 PC를 A / 온라인 상태의 PC를 B라고 하자이 상황에서 A에 있는 git commit 내역을 github에 업로드하려고 한다. 과정A PC에 있는 .git 폴더를 압축한다. 압축 파일 형식은 상관없다. .git 폴더를 손쉽게 가져오기 위해서 압축하는 것이기 때문이다.'압축'이 아닌 다른 방식을 사용해도 상관없다. A PC에 있는 .git 폴더를 B PC에 온전히 옮길 수만 있으면 된다.A PC에 있는 .git 폴더를 압축한 파일을 B PC에 옮긴다.B PC에서 해당..

카테고리 없음 2025.05.19

ifconfig 명령어

ifconfig 명령어란?ifconfig는 interface configuration의 줄임말로, 커널에 내장된(kernel-resident) 네트워크 인터페이스를 설정하는 데 사용된다. 이 명령어는 부팅 시 필요에 따라 인터페이스를 설정하며, 그 이후에는 일반적으로 디버깅이나 시스템 튜닝이 필요할 때만 사용된다. 이처럼 ifconfig는 네트워크 목록을 확인하는 것 뿐만 아니라 네트워크 인터페이스를 '설정'하는데도 사용되는 명령어이기도 하다. 이번 글에서는 ifconfig를 통해 출력되는 내용이 어떤 내용인지 정리하려고 한다.옵션 없이 ifconfig만 입력했을 때 출력되는 결과각 요소들의 의미와 예시 내용을 함께 살펴보겠다.enp5s0 : 네트워크 인터페이스의 이름 flags : 네트워크 카드의 상태..

카테고리 없음 2025.05.11

컨테이너 내부 파일 ⇔ 로컬 PC 파일 복사 (docker cp)

docker cp 컨테이너와 로컬 PC 사이에서 파일 또는 폴더를 복사하는 명령어 사용법 docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|- docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH 정리하면 docker cp [OPTION] 저장할파일또는폴더 저장위치예시 ex1) 로컬 파일(./some_file_in_loca)을 컨테이너의 work 폴더에 복사 docker cp ./some_file_in_local CONTAINER:/workex2) 컨테이너에 있는 /var/logs 폴더에 있는 모든 파일을 로컬 PC의 /tmp/app_logs 폴더에 복사 docker cp CONTAINER:/var/logs/ /tmp/app_lo..

Docker 2023.10.11

[Docker] Docker References - EXPOSE

EXPORT 명령어 기본 문법 EXPOSE [/...] EXPOSE 명령어(instruction)는 Docker에게 container가 동작하는 동안 특정 포트를 사용한다는 것을 알려준다. 포트의 프로토콜은 TCP 또는 UDP이고 기본값으로는 TCP가 적용된다. EXPOSE 명령어가 실제로 포트 번호를 publish하는 건 아니다. 단지 이미지를 빌드하는 사람과 컨테이너를 동작시키는 사람 사이에 어떤 포트를 publish하도록 의도되었는지를 문서의 형태로 제공된다. 진짜로 container에서 port 번호를 publish하고 싶다면 docker run을 할 때 컨테이너의 -p 옵션값을 설정해줘야 한다. ex) EXPOSE 80/udp # UDP의 80번 포트를 열도록 하고 싶음 EXPOSE 80/tcp..

Docker 2023.09.18

[Docker] Docker References - LABEL

기본적인 LABEL 명령어(instruction) 문법LABEL = = = ... LABEL 명령어는 image에 메타데이터를 추가하는 기능을 갖고 있다. 위와 같이 LABEL은 key-value 쌍이다. 만약 LABEL 값에 공백을 추가하고 싶다면 큰 따옴표와 \를 사용하면 된다. ex) LABEL "com.example.vendor"="ACME Incorporated" # 공백을 포함할 때 큰 따옴표를 사용함 LABEL com.example.label-with-value="foo" LABEL version="1.0" LABEL description="This text illustrates \ that label-values can span multiple lines." # 공백을 포함할 때 백슬래시랑..

Docker 2023.09.18

[Docker] Docker References - CMD

CMD 명령어(instruction) 형식CMD ["executable","param1","param2"] (exec 형식, 이 형식을 더 선호된다) CMD ["param1","param2"] (ENTRYPOINT에 대한 기본 파라미터) CMD command param1 param2 (shell 형식) Dockerfile에는 오직 하나의 `CMD 명령어`만 존재할 수 있다. 만약, 1개 이상의 CMD 가 있다면, 가장 마지막에 있는 CMD가 동작한다. `CMD의 주요 목적`은 실행하고 있는 컨테이너에 기본값을 제공하는 것이다. 이 기본값들은 `executable`을 포함하거나 생략할 수 있다. (물론, 생략하는 경우에는 ENTRYPOINT instruction을 확정해야 한다) 만약에 CMD가 ENTRY..

Docker 2023.09.15

[Docker] Docker References - RUN

RUN 명령어는 2개의 형태를 가진다. RUN ⇒ 여기서의 command는 shell 형식의 명령어다. Linux에서는 /bin/sh -c, Windows 에서는 cmd /S /C가 생략된 거라 보면 된다. RUN ["executable", "param1", "param2"] ⇒ 이를 exec form 이라고 함 RUN 명령어(instruction)는 현재의 이미지 위에 새로운 층(layer)에서 명령을 실행하고 결과를 커밋한다. 커밋된 결과 이미지는 Dockerfile의 다음 단계에서 사용된다. 이렇게 층층이 쌓이는 RUN 명령어와 커밋들은 커밋이 간편하고 컨테이너가 Docker의 핵심적인 개념을 준수한다. exec form을 통해 shell string을 처리해야 하는 작업을 피할 수 있고 shell..

Docker 2023.09.13

[OS] 3-3. 프로세스에 대한 연산

대부분의 시스템에서 프로세스들은 병행 실행되면서 동적으로 생성되고 제거되야 한다. 때문에 OS는 프로세스 생성 및 종료를 위한 기능을 제공해야한다. 이번 페이지에서는 프로세스 생성 방법에 대해 살펴보도록 하겠다 . 1. 프로세스 생성 프로세스가 실행되는 동안 하나의 프로세스는 여러 개의 새로운 프로세스들을 생성할 수 있다. 이때, 프로세스를 생성한 프로세스를 부모 프로세스라고 하고 생성된 프로세스를 자식 프로세스라고 한다. 마찬가지로 자식 프로세스들도 프로세스를 생성할 수 있다. 이 결과들을 그림으로 표현하면 하나의 트리가 완성된다. 대부분의 현대 OS들은 프로세스 식별자(pid)를 사용해서 프로세스를 구분한다. 당연히 pid는 시스템의 각 프로세스에 고유한 값을 가지도록 할당된다. 이 식별자는 프로세스..

OS Concepts 10th 2023.09.06

[Network] 3-1. 전송계층 서비스 및 개요

전송 계층(transport layer)에 대해서 다뤘던 내용을 간략하게 살펴보도록 하자. 전송계층 프로토콜은 서로 다른 host에서 동작하는 애플리케이션 프로세스간에 논리적 통신(logical communication)을 제공한다. 논리적 통신이란 애플리케이션 관점에서 보면 프로세스들이 동작하고 있는 호스트들이 직접 연결된 것 처럼 보인다는 것을 의미한다. 실제로 host 들은 서로 다른 지역에 있기 때문에 물리적으로는 직접적으로 연결 될 수 없다. 애플리케이션 프로세스는 메시지 운반에 사용되는 물리적 인프라의 세부사항에 관계없이 서로 메시지를 송/수신하기 위해 전송 계층에서 제공하는 논리적 통신을 사용한다. 논리적 통신의 개념 그림 위 그림과 같이 전송 계층 프로토콜은 종단 시스템(end system..