본문 바로가기

분류 전체보기268

Shell(셸, 쉘) 종류 및 특징 Why is it called Shell? - 왜 셸(쉘)이라 부르는가? Shell은 영어 단어로 하면 껍질, 껍데기란 뜻이다 Q. 왜 OS에서 터미널, cmd등을 쉘이라고 부르는가? A. 사용자와 운영체제의 내부(커널) 사이의 인터페이스를 감싸는 층이기 때문에 그러한 이름이 붙었다 What Shell is... - 셸(쉘)이란... 셸(shell)은 사용자와 컴퓨터 운영체제간의 대화형 인터페이스를 말한다. 사용자는 셸을 통해 컴퓨터에 명령을 입력하고, 셸은 그 명령을 운영체제가 이해할 수 있는 형태로 변환하여 전달한다. 그리고 운영체제는 이 명령을 실행하고 결과를 사용자에게 보여준다. Kind of Shells - 셸(쉘)의 종류 인터페이스별 명령줄 인터페이스(CLI - Command Line Inte.. 2023. 11. 8.
Kill -9(SIGINT) vs Kill -15(SIGTERM) 테스트(feat.graceful kill) UNIX계열 OS인 Linux(ex. ubuntu, macOS-BSD, Darwin)는 커널단에서 시그널을 사용하여 프로세스에 다양한 명령을 내릴 수가 있다 macOS에서 테스트해보려고 한다 일단 macOS에서 가능한 kill 옵션(인자)를 확인해보자 kill -l 손으로 일일이 세도 되지만 깔쌈하게 몇개의 인자를 갖고 있는지 아래의 명령어로 확인해보자 kill -l | tr ' ' '\n' | tee /dev/tty | wc -l | xargs echo "total command count:" macOS에서는 kill 관련 31개의 인자를 쓸 수 있다 이중 프로세스 종료와 관련된 것은 1(HUP), 2(INT), 3(QUIT), 6(ABRT), 9(KILL), TERM(15) 이렇게 있다 SIG라는 것.. 2023. 10. 27.
(4) 도커 - 도커 데스크탑으로 docker CLI 살짝 대체해보기(Docker Desktop 사용법 익히기) https://code-boki.tistory.com/128 (3) 도커 - 리눅스 우분투 이미지로 다양한 도커 명령어 테스트 Docker Desktop을 받으면 일단 기본적으로 docker, docker-compose, docker machine이 설치가 된다 그래서 docker 명령어를 쓸 수 있다 도커 desktop을 실행 후 터미널을 열어서 docker를 입력해보자 이제 도커(2)번 글 code-boki.tistory.com 이전 글에서는 docker CLI를 주로 다뤘었다 이번에는 Docker Desktop(GUI - Graphic User Interface) 으로 도커 몇몇 명령어를 대신 처리해본다 Docker Desktop을 실행하자 맥을 사용중이라면 메뉴 도구를 한번 확인해보자 Dashbo.. 2023. 10. 23.
(3) 도커 - 리눅스 우분투 이미지로 다양한 도커 명령어 테스트 Docker Desktop을 받으면 일단 기본적으로 docker, docker-compose, docker machine이 설치가 된다 그래서 docker 명령어를 쓸 수 있다 도커 desktop을 실행 후 터미널을 열어서 docker를 입력해보자 이제 도커(2)번 글에서 입력했던 Docker Hub에서 도커 이미지를 받아서 실행시켜보는 것을 해본다 도커 도움말 보기 docker --help 간단한 명령어 및 복잡한 명령어들이 나온다 도커 이미지 검색 docker search --help 보통 명령어에 나오는 [ ] 는 필수값이 아닌 options를 의미한다(없어도 된다는 의미) 그래서 우리가 원하는 우분투 이미지를 검색해보자 docker search ubuntu 라고 입력 우분투와 관련된 이미지 목록들.. 2023. 10. 23.
(2) 도커 허브에 계정 만들기 도커허브란? npm, maven repository, github 처럼 도커 이미지를 검색하고 올리고 다운받을 수 있는 중앙 Repository이다 npm/maven 처럼 formal한 이미지를 올릴 수도 있고, github처럼 이용할 수도 있다 예를 들어, 내가 A컴퓨터에서 docker hub에 자신의 계정에 도커 이미지를 잘 말아서 올려놓고, 배포를 해서 실행할 B컴퓨터에서 docker hub에 있는 자신의 이미지를 다운로드하면 끝나는 것이다! https://hub.docker.com/ Docker Hub Container Image Library | App Containerization Deliver your business through Docker Hub Package and publish ap.. 2023. 10. 20.
(1) 도커 설치하기 https://www.docker.com/get-started/ Get Started | Docker Get started with Docker Desktop and join millions of developers in faster, more secure app development using containers and beyond. www.docker.com 도커 홈페이지에 접속한다 MacOS: mac M1 이상을 쓴다면 Apple Chip을 아니라면 Intel Chip을 다운받자 Windows, Linux.. 윈도우의 경우는 다른 곳에서 WSL2를 미리 다운받고 설치하는 게 좋을 것이다 약관에 동의하고 Accept를 누르자 설치가 잘 됐다면 애플리케이션을 실행시켜보자 그리고 터미널을 열어서 dock.. 2023. 10. 20.
IntelliJ 터미널 조금 더 잘 사용하기 요즘에 카프카로 consume, producer작업을 하는 프로그램을 개발하고 있다 kafka는 broker를 통해 topic으로 consumer, producer가 통신하는데, kafka와 zookeper를 docker-compose로 켜주고, consumer와 producer를 다른 프로세스로 실행해야된다 cosumer의 경로는 $rootProject/consumer producer의 경로는 $rootProject/producer docker-compose의 경로는 $rootProject/ . ├── docker-compose.yaml ├── consumer └── producer 로 각각 다른 경로에서 프로세스가 실행되는 상황이라고 가정한다 이럴 때 개발 툴에서 여러 터미널을 열어야 하는데 보통 i.. 2023. 10. 13.
개발자도구 조금 더 잘쓰기( feat. network tab ) 웹 개발자의 필수도구인 F12 혹은 option + cmd + i 키를 누르면 나오는 개발자도구... 정말 잘 쓰는 사람은 드물다고 생각한다 일단 이번에는 network 탭에서의 간단한 정보들에 대한 것들을 포스팅하려고 한다 개발자도구 탭에서는 정말 여러가지 디버깅을 해볼 수 있는데, 이 중 network 탭을 살펴보자 저 위의 단축키를 눌러서 네트워크 탭을 들어가보자 보통 이런 화면을 볼 수 있을 것이다 여기에는 webserver가 내려준 정적 파일(css, ico, images)들과 http method 등 다양한 것들을 볼 수가 있는데, 프론트엔드 개발자의 주된 관심사는 Http method 호출이다(Application Programming Interface->api라고 흔히 부르는) 위의 Sub.. 2023. 9. 25.
PostMan Hoeny Tips 3 아주 오랜만에 포스트맨 관련 팁을 쓰는 것 같다..!! PostMan의 여~~~러 가지 사용 방법에서 ResponseBody를 포스트맨의 환경 변수로 저장하는 포스팅을 했었다 좀 더 고도화해서 팁을 추가해보려고 한다 목차 1. post-man HTTP /POST 요청 시에 body값 주석 2. response응답에서 headers, body를 뽑아서 환경변수로 저장 3. 단일 request가 아닌, collection 요청 헤더에 전역으로 추가 ------------------------------------------------------------------------------------- 1. post-man HTTP /POST 요청 시에 body값 주석 일단은 postman 테스트를 하기 위한 .. 2023. 9. 25.
1. 프로젝트 생성(Kotlin Springboot) IntelliJ를 사용하고 있다는 전제 하에 글을 작성한다 1. File -> New -> Project 2. Project 정보들을 적어준다 Name: 알아서 Language: Kotlin Type: Gradle-Kotlin(개인취향) kotlin을 선택하면 .kts파일로 gradle이 관리된다 JDK: Spring 3.x.x이상부터는 최소 17을 사용해야 한다 Java: JDK와 동일하게 한다 Group은 개인 또는 회사의 앞에 붙는 패키지명을 입력해주면 된다 Packaging은 Jar를 추천한다 Kotlin은 Lombok을 쓸 필요가 없다. 이후에 설명할 것이다 Web, Spring Data MongoDB, Spring Data JPA, PostgreSQL Driver, Validation 만 추가.. 2023. 8. 22.
0. Kotlin Springboot3.x.x + Spring Data(Postgresql, MongoDB) + Security 최근에 코틀린 스프링으로 작업을 하면서 포스팅을 해보고 싶었다 기본적으로 2023년 8월 21일 기준으로 최신인 3.1.2 버전으로 만들 것이다 https://spring.io/blog/2023/07/20/spring-boot-3-1-2-available-now Spring Boot 3.1.2 available now spring.io 또한 Spring Data Jpa(Postgre), Spring Data MongoDB(MongoDB)를 커넥션으로 설정해서 요즘 많이 쓰이는 ORDB인 Postgresql과 NoSQL의 절대강자 MongoDB에서 간단 또는 복잡한 쿼리는 어떻게 처리하는지에 대해서 포스팅하려고 한다 중간중간 코틀린 문법을 활용해서 Null처리나 로직을 깔끔하게 가져가 볼 예정이다 마지막으.. 2023. 8. 22.
UTM Virtual Machine으로 M1 Mac에서 Ubuntu LTS 버전 설치하기(2023.06) 1. UTM Install https://mac.getutm.app/ UTM Securely run operating systems on your Mac mac.getutm.app dmg파일을 download 받는다 열어서 설치한다 2. Ubuntu 22.04.2 LTS version ISO 다운로드 https://ubuntu.com/download/server/arm Ubuntu for ARM | Download | Ubuntu Download Ubuntu Server for ARM with support for the very latest ARM-based server systems powered by certified 64-bit processors. ubuntu.com 스크롤을 아래로 내려서 LT.. 2023. 6. 8.
M1 mac mysql 설치하기 homebrew가 설치되어있다는 가정 하에 진행한다 설치가 되어있지 않다면 https://code-boki.tistory.com/116 = 8 MEDIUM Length >= 8, numeric, mixed case, and special characters STRONG Length >= 8, numeric, mixed case, special characters and dictionary file Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: [ 선택 ] Please set the password for root here. New password: [ 비밀번호 ] Re-enter new password: [ 다시 입력 ] // 2 - root 패스워드 강도를 그대.. 2023. 6. 6.
MongoDB Compass Download for M1 Mac https://www.mongodb.com/products/compass MongoDB Compass Explore and interact with your data using Compass, the GUI for MongoDB. Query, modify, delete, and more — all from one interface. www.mongodb.com 에 접속한다 Download Now라는 초록색 버튼 클릭 MongoDB Compass Download (GUI)을 다운로드한다 (MongoDB Shell Download 아님!!) 버전은 최신이면서 Stable로 두고 Platform과 Package를 선택하자 우리는 macOS arm64 (M1)을 선택하면 된다 패키지는 기본적으로 dmg이다 다운.. 2023. 6. 5.
M1 mac mongoDB 설치하기 homebrew가 설치되어있다는 가정 하에 진행한다 설치가 되어있지 않다면 https://code-boki.tistory.com/116 2023. 6. 5.
Mac CLI package tool HomeBrew 설치하기 https://brew.sh/index_ko Homebrew The Missing Package Manager for macOS (or Linux). brew.sh 위에 사이트에 들어가보면 터미널에 붙여넣기 하세요 라고 나와있다 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 설치 이후에는 brew ... 의 명령어를 사용할 수 있게 된다 homebrew에 올라온 패키지, 의존성이 있다면 홈페이지에 직접 들어가서 .dmg(==.pkg, .exe)같은 실행파일들을 직접 다운받지 않아도 자동으로 설치가 되는 마법같은 명령어를 사용할 수 있게된다 2023. 6. 5.
오른쪽 Command key를 한/영키로 바꾸기 cmd + space bar 눌러서 terminal 혹은 터미널이라고 입력하자 열린 터미널창에 아래의 코드를 복사해서 붙여넣기하고 엔터 mkdir -p /Users/Shared/bin echo '''#!/bin/sh\nhidutil property --set '\'{\"UserKeyMapping\":\[\{\"HIDKeyboardModifierMappingSrc\":0x7000000e7,\"HIDKeyboardModifierMappingDst\":0x70000006d\}\]\}\''''' > /Users/Shared/bin/userkeymapping chmod 755 /Users/Shared/bin/userkeymapping sudo cat 2023. 6. 5.
UTM Virtual Machine으로 M1 Mac에서 Windows 11 설치하기(2023.06) 목차 1. UTM Install 2. Windows 11 ISO Image Download 3. UTM에 인스턴스 만들기 4. 윈도우 설치 5. 마우스 스크롤 반대 설정 6. 한글 키보드 입력 설정 7. 디스플레이 크기 변경 8. 다크 테마(옵션) 9. 공유폴더 설정 1. UTM Install https://mac.getutm.app/ UTM Securely run operating systems on your Mac mac.getutm.app dmg파일을 download 받는다 열어서 설치한다 2. Windows 11 ISO Image Download https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewARM64 Download.. 2023. 6. 3.
Mac M1 homebrew로 postgreSQL 설치하기(+intelliJ, pgAdmin) 일단 homebrew가 설치되어 있다는 가정하에 포스팅을 한다 자기가 최신의 postgresql 버전을 설치하고 싶지 않고, 특정 버전의 postgresql을 설치하고 싶다면 아래의 명령어로 검색을 해보자 brew search postgresql - 특정 버전 설치 brew install postgresql@[버전] - 최신 버전 설치 brew install postgresql 난 최신버전을 설치하는 쪽으로 선택했다 다 설치가 끝나면 설치된 버전을 확인해보자 postgres -V or postgres --version 이제 터미널 & homebrew로 postgresql을 로컬에서 실행해보자 - 서비스 실행 brew services start postgresql 또는 brew services start .. 2023. 5. 19.
VSCode Project단위 Settings & Extensions JetBrains 계열을 주로 써온 내가 요즘에는 VScode를 쓰게 되었다 VScode에서 프로젝트를 시작할때는 다른 팀원들과의 VSCode IDE 설정, Extensions 설정, Prettier/ESLint(Frontend) 설정 등을 Sync해줘야 한다 - Settings VSCode의 전역설정(Global Settings) 말고 작업공간별 설정(WorkSpace Settgins)를 설정해주면 된다 일단 VScode를 열어서 code command를 시스템에 설치를 하자(현재 위치를 Root Working Directory로 만들어서 VScode를 열게 해준다) code command는 VSCode에서 시스템에 설치가 가능하다 (cmd + shift + P 를 누르고 code를 검색해서 설치하자).. 2023. 5. 17.