프로그래밍/General 64

Git Release 명령어 인터페이스 (Command Line Interface)에서 처리

Install Hub hub를 이용할 것이다. hub는 Go로 만들어진 cli 툴로, 운영체제별로 다음과 같이 설치할 수 있다. # Mac brew install hub # Windows choco install hub # Debian, Ubuntu sudo apt install hub hub를 사용하기 위해서, github token이 필요한데, https://github.com/settings/tokens에서 Token을 생성 후 얻어와야한다. 새로운 토큰을 생성하고, 적절한 권한을 주자. 나는 release만 이용할 것이기 때문에 우선 repo에 관련된 권한만 주었다. ~/.config/hub 파일을 생성하고 아래와 같이 세팅해준다. github.com: - user: YOUR_USERNAME oa..

Windows 패키지 매니저 Chocolatey (choco) 설치하기

Linux의 apt, yum, Mac의 homebrew처럼 Windows에서도 패키지 매니저가있다. Chocolatey, choco...라는 녀석인데 이름이 귀여우니까 써보자. 우선 관리자 권한으로 명령프롬프트나 Powershell을 실행한다. 그리고 아래 "Get-ExecutionPolicy" 명령어를 실행하고, 만약에 Restricted라고 표시가 된다면 Get-ExecutionPolicy AllSigned나 Bypass -Scope Process로 설정해준다. Set-ExecutionPolicy AllSigned 이제 설치 명령어를 실행한다. 아래 스크립트를 복사해서 붙여넣자! Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.Servic..

국기 이모지 동적으로 생성하기 (ISO 국가코드 사용)

국가 코드(ISO-3166-1 Alpha-2 Code)를 사용하여 국기 이모지 유니코드를 얻어오는 방법이다. 반대로, 국기 이모지를 받아서 국가 코드로 변환할 수도 있다. 반드시 countryCode가 제대로 들어온다는 보장이 있어야하기 때문에 "/^[a-z]{2}$/i" 같은 정규식을 추가해 줄 수도 있다. Javascript const OFFSET = 127397; function getFlag(countryCode) { const codePoints = [...countryCode.toUpperCase()].map(c => c.codePointAt() + OFFSET); return String.fromCodePoint(...codePoints); } Kotlin const val OFFSET = ..

Artillery를 이용한 쉬운 부하 테스트(stress test)

Next.js로 앱을 처음 개발하고, 실제 서비스로 출시하기전 부하테스트를 해보려고 Artillery를 찾아보게되었는데, 너무 간단하고 쉬워서 공유를 해보려고 한다. # Install npm을 이용해 컴퓨터에 artillery를 설치해준다. 딴얘기긴한데, 공식 홈페이지 너무 잘만들어 놓은거같다. 디자인이 완전 취향.... npm install -g artillery artillery -v로 잘 깔렸는지 확인하면 된다. 공룡 보고싶으신 분들은 artillery dino라고 치시길 # Quick Start quick은 하나의 HTTP endpoint를 테스트 할때 사용한다. 예로들자면 다음과 같다. count는 50명의 가상유저들, num은 각각의 유저들이 100번의 GET 요청을 보낸다는 옵션이다. atr..

SCP로 두 컴퓨터간 파일 옮기기 (Windows open ssh 설정)

핵넷이라는 게임은 해커가되어 여러 컴퓨터를 넘나들며 scp 명령어를 통해 파일을 빼오는 게임인데, ㅋㅋㅋ그냥 생각나서 사진 첨부해봤다. 이번에 쓰던 맥북의 성능이 모자라다고 느껴서 게임용인 윈도우즈 노트북으로 개발 디바이스를 옮겼는데 맥북이 드디어 팔렸다! 그래서 몇몇 프로젝트들이나 원래 맥북에있었던 중요 파일들을 옮기는 작업을 진행중에 글을 쓰게되었다. scp scp는 secure copy의 약자로, 네트워크를 통해 두 호스트간의 파일을 복사한다. 데이터 전송에 SSH를 사용하기때문에 SSH와 동등한 보안수준을 제공한다. 아래는 간단한 명령어 예시이다. # file을 원격지의 ~/Documents에 복사 scp @:/Documents # file1, 2를 원격지의 ~/Documents에 복사 scp ..

Cloudflare를 이용한 무료 HTTPS 설정 (with NGINX)

메모용으로 간단히 작성되었습니다. 1. CloudFlare에 Add Site 2. SSL/TLS > Full(Strict)로 설정 3. Origin Server탭에 들어가서 Create Certificates 4. 만들어진 PEM키를 서버에 저장. (orifianl certificate와 private key 둘 다 있음) 5. nginx config 수정 server { listen 80; listen [::]:80; server_name your.domain; access_log /var/log/nginx/railotaku-access.log; error_log /var/log/nginx/railotaku-error.log; location / { return 301 https://$server_na..