본문 바로가기

Computer & Program121

[python] List 안녕하세요. TDR입니다. 오늘은 python에서의 list(배열) 자료구조의 기본적인 것에 대해 정리해 보겠습니다. ## 생성 list_object = [] list_object = list() list_object = [1, 2, 3, 4] ## 삽입 # list 마지막에 value 추가 list_object.append(value) # index 위치에 value 추가 list_object.insert(index, value) # list_object += [5, 6]과 동일 list_object.extend([5, 6] ## 읽기 # 3을 읽음 re = list_object[2] ## 수정 # list_object = [1, 2, 5, 4]가 됨 list_object[2] = 5 ## 삭제 # i.. 2024. 1. 16.
[Docker] 00. 도커(Docker)란 무엇인가? 왜 필요한거지? 안녕하세요. TDR입니다. 오늘은 도커란 무엇이며 어떤 장점이 있어서 사용하는지에 대해서 설명해 볼까합니다. 우선 도커(docker)란, Linux기반에서 컨테이너(container)를 다루는 소프트웨어를 말합니다. 그리고 컨테이너란 데이터 또는 프로그램을 별도의 장소에 격리시키는 것입니다. 우리가 해외에 물류를 수입/수출 할 때 큰 배에 수 많은 컨테이너 별로 물건들을 넣는데 이와 동일합니다. (그래서 도커 이미지를 보면 고래 등에 컨테이너가 쌓여있는 이미지) 결국, 도커는 데이터 또는 환경등을 분리한 컨테이너를 컨트롤하는 소프트웨어입니다. 그럼 왜 도커를 써야할까요? 그건 시대가 변하여 예전보다 더 빠른 업데이트, 다양한 기능들을 요구하게 되면서 서버 리소스를 최대한으로 사용하면서도 빠른 개발, 빠른.. 2023. 4. 2.
[Docker] 06. Registry & Repository 정리 안녕하세요. TDR입니다. 저번에 Container와 Image에 대한 정리를 해보았는데 이번에는 이와 유사한 레지스트리(Registry)와 레포지토리(Repository)에 대해서 정리를 해보겠습니다. 우선 각 의미를 보면, 레지스트리(Registry)란? Docker image를 배포(보통 push)하는 저장소 레포지토리(Repository)란? 레지스트리를 구성하는 단위 이렇게만 쓰면 무슨 말인지 감이 잘 안오겠지만 예시를 보면 쉽습니다. Ex) registry-name/repository-name 이런 형태를 가지게 됩니다. 즉, 하나의 레지스트리 안에는 여러개의 레포지토리를 가질 수 있습니다. 실무에서의 예를들면 회사에서 A라는 서비스와 B라는 서비스를 레지스트리에 저장한다고 했을 때, 개발(d.. 2023. 3. 30.
[Docker] 04. Network & Volume 명령어 정리 안녕하세요. TDR입니다. 저번에 Container & Image 명령어를 정리했고 마지막으로 잘? 거의? 사용되지 않지만 서버 엔지니어나 인프라 엔지니어가 알아두면 도커의 활용도를 높일 수 있는 명령어들을 정리해 볼까 합니다. 각 명령어의 개수가 많지 않고 비중도 높지 않아 한번에 정리합니다. Network Commnad 최신 명령어 내용 network connect 실행 중인 컨테이너를 network create 커맨드로 생성한 네트워크에 접속 network create 도커 엔진 내부에서 컨테이너끼리 통신할 수 있는 네트워크를 생성 network disconnect 지정한 컨테이너를 네트워크에서 접속 해제 network inspect 지정한 네트워크의 상세 정보를 출력. 해당 네트워크에 부여된 네트.. 2023. 3. 30.
[Docker] 03. Image 명령어 정리 안녕하세요. TDR입니다. 저번에 Container 명령어에 이어 그 다음으로 가장 많이 사용하는 image 명령어를 정리해 볼까 합니다. Image Command 예전 명령어 최신 명령어 내용 build image build Dockerfile 스크립트로 이미지를 생성 history image history 지정한 이미지의 생성 이력을 출력 import image import container export 커맨드로 내보내기된 tar 파일을 이미지로 읽어 들임 - image inspect 지정한 이미지의 상세 정보를 출력 load image load image save 커맨드로 내보내기된 tar 파일을 이미지로 읽어 들임 images image ls 현재 도커 엔진에 내려받은 이미지의 목록을 출력 - i.. 2023. 3. 30.
[Docker] 02. Conainer 명령어 정리 안녕하세요. TDR입니다. Docker에 간략하게 정리를 할까 하는데 뭐가 됐든 일단 명령어만 알면 이것저것 해보면서 익힐 수 있기 때문에 우선 대략적인 명령어들을 정리하고 추후에 좀 더 자세한 내용을 정리할까 합니다. 다른 포스팅도 마찬가지지만 기본적으로 제가 여기저기 찾기 귀찮아서 정리하는 것임임을 미리 밝힙니다. Container Command 예전 명령어 최신 명령어 내용 attach container attach 백그라운드로 동작 중인 컨테이너를 포어그라운드로 돌리고, 키보드 입력과 화면 출력을 가능하게 함 commit container commit 실행 중인 컨테이너로부터 이미지를 생성 cp container cp 호스트와 컨테이너 간에 파일이나 폴더를 복사 create container cr.. 2023. 3. 30.
[Docker] 01. Container & Image 차이 안녕하세요. TDR입니다. 사람들이 Docker를 사용하면서 얘기를 할 떄보면 Container와 Image를 이상하게 혼용해서 사용하는 경우가 있습니다. 서로 오해의 소지 없이 의사소통이 가능하다면 문제 없지만 잘 모르는 사람들과 대화를 할 때 보면 이상하게 말이 안 맞물려 들어가는 경우도 있어서 이번에는 Container와 Image에 정확한 정의를 설명해 볼까 합니다. Image는 Container를 만들기 위한 자료를 가지고 있는 파일이고, Container는 Image를 토대로 실행되는 환경입니다. 객체지향 프로그램의 예를들면 간단한데 Image는 Class이고 Container는 Instance입니다. 즉, DockerHub에서 내려받는 것은 Image이고, 내려받은 이미지를 docker ru.. 2022. 10. 4.
[Linux] Shell에서의 단축키 Linux는 대게 서버에서 많이 사용하는데 그러다보면 대부분이 CLI 환경을 사용할 것이다. 그럼 필연적으로 shell 환경에서 사용을 할 텐데 오늘은 shell에서의 단축키를 정리해 볼까 한다. 동작 단축키 설명 Control Screen Ctrl + L 화면을 모두 지움 ($ clear) Ctrl + S 화면의 출력을 멈춤 Ctrl + Q Ctrl + S로 멈췄던 화면을 다시 재개함 Control Cursor Ctrl + A 줄의 맨 앞으로 이동 Ctrl + E 줄의 맨 뒤로 이동 Alt + B 왼쪽으로 한 단어 이동 Ctrl + B 왼쪽으로 한 글자 이동 (방향키와 동일) Alt + F 오른쪽으로 한 단어 이동 Ctrl + F 오른쪽으로 한 글자 이동 (방향키와 동일) Copy / Paste Ctr.. 2021. 12. 23.
[Linux] Shell의 설정 파일 Windows를 보면 "시스템 속성"의 "환경 변수"에서 사용자의 변수나 시스템 변수 등을 추가 할 수 있다. Windows의 경우 GUI이기 때문에 어렵지 않게 해당 시스템 / 사용자 설정을 할 수 있는데 Linux의 경우 어디서 해야 할지 몰라 해매는 경우가 있다. 그래서 그 부분을 정리해 볼려고 한다. File Path Description System Config File /etc/profile 시스템 전역으로 설정할 수 있는 shell 설정 파일 /etc/profile.d/* 사용자가 로그인할 때 해당 위치의 모든 shell 스크립트를 실행 /etc/bashrc 시스템 전역의 성격을 갖고 있으며 shell에서 또 다른 shell을 실행하는 비로그인 shell을 실행할 때마다 로드되는 파일 Use.. 2021. 12. 21.
[Linux] 주요 디렉토리 구조 개인적으로 처음 Linux를 접하는 사람이 가장 답답해하는 부분이 디렉토리의 구조를 몰라서 오는 부분이 크다고 생각한다. 예를들어 친숙한 windows의 경우 기본적으로 설치한 프로그램들은 Program Files에 있고 환경 설정은 "고급 시스템 설정"에 있다 등에 대한 지식이 있기 때문에 어떤 문제가 뭔가를 하고 싶을 때 딱히 불편한 점이 없다. 하지만 Linux의 경우, 특히 CLI의 경우, Shell에서 직접 관리를 해줘야 하기 때문에 명령어는 둘째치고 어디에 뭐가 있는지를 모르면 여간 불편한게 안니다. 그래서 이번 기회에 정리를 해볼까 한다. Path Description / 리눅스 파일 시스템의 최상위 디렉토리 /bin/ 모든 사용자가 사용할 수 있는 주요 명령어들 위치 대표 명령어로 ls, .. 2021. 12. 20.
[Linux] 부팅(Booting) Linux의 부팅의 순서 및 실행 레벨에 대해서 간략히 정리해 볼려고 한다. 기본적으로 설명은 CentOS를 기준으로 한다. 1. BIOS에서 하드디스크 0번 섹터인 MBR(Master Boot Record)로부터 boot.img를 읽는다. - MBR은 512byte여서 파일 시스템을 해석하기에는 작음 - 그래서 1.5단계인 core.img를 점프하는 역할까지만 수행 2. 다음 파티션인 63번 섹터 이전까지의 62개의 섹터(약 30KB)에 ext, fat, NTFS와 같은 파일 시스템 드라이버를 포함 - core.img는 파일 시스템 드라이버를 로드하고 2단계로 점프 3. GRUB legacy & GRUB2의 grub.conf의 설정에 따라 운영체제 목록을 표시 - 사용자가 운영체제를 선택하면 해당 운영.. 2021. 12. 15.
[Java] String.format 안녕하세요. TDR입니다. 평소에 쓸일이 거의 없지만 막상 쓸려고하면 기억이 안나서 정리하는 시리즈 입니다. 오늘 정리할 것은 Java의 콘솔 출력 시 format을 지정해서 출력하는 방식입니다. 예를들어, 소수점 2자리까지만 출력하고 싶다. 1000단위 마다 콤마를 찍고 싶다. (원화 표시) 문자열을 10자리 단위로 출력하고 싶다. 와 같은 작업을 하고 싶을 때 어떻게 해야하는 지에 대한 정리입니다. String.format();// Formating한 문자열 반환 System.out.format();// Formating한 문자열 출력 일반적으로 위와 같이 사용을 합니다. 크게 문자열을 다루는 것과 숫자를 다루는 방식이 있습니다. 문자열 Format %[인자순서값$][-][자리수]s : 검은색 글자는.. 2020. 6. 23.