전체 글 174

SSH 공개키 인증 사용 방법

1. 관리용 PC에서 키 쌍 생성최신 버전의 윈도우 10/11에는 openssh가 딸려옵니다. passphrase는 개인키에 거는 비밀번호입니다. 입력하지 않으면 개인키를 사용할 때 비밀번호를 물어보지 않습니다. 대신 개인키가 유출되면 아무나 사용할 수 있게 됩니다.PS C:\Users\user> ssh-keygenGenerating public/private ed25519 key pair.Enter file in which to save the key (C:\Users\user/.ssh/id_ed25519):Enter passphrase (empty for no passphrase):Enter same passphrase again:Your identification has been saved in C..

[Docker] Docker/Docker Compose 사용 방법 정리 (Ubuntu 24.04 LTS)

1. 패키지 설치apt-get update && apt-get upgrade -yapt-get install -y docker.io docker-compose-v2 2. 도커 서비스 활성화systemctl enable --now docker 3. 도커 네트워크 생성docket network create --subnet=192.168.1.0/24 my_network 4. 도커 작업용 디렉터리 생성mkdir /opt/docker-setupcd /opt/docker-setup 5. Docker compose 설정 파일 작성 (docker-compose.yml)---networks: my_network: external: trueservices: nginx: image: ubuntu:24.04 ..

[Node.js] 노드.js 설치, Vite 설정 및 개발 서버 구동

1. Node.js 공식 홈페이지의 설명에 따라 설치 진행https://nodejs.org/en/download Node.js — Download Node.js®Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.nodejs.orgnode, fnm(Node.js 버전 관리 프로그램), npm(패키지 관리 프로그램) 등은 본인 계정의 홈 디렉터리/.local/share/fnm/ 아래에 설치된다.  2. Vite(개발환경용 웹 서버) 설치npm install vite  3. Vite 설정vite.config.jsimport { defineConfig } from 'vite'import react from '@vitejs/plugin..

Git 자주 쓰는 명령어 정리

용어 정리working tree: 현재 상태의 Git 디렉터리staging area: git add를 통해 캡처된 파일들의 모임local branch: git commit을 통해 커밋된 파일들은 현재 선택된 브랜치에 반영된다. git config --global user.email=""; git config --global user.name="" 사용자 이메일, 이름 설정(필수). 처음 한 번 설정하면 변경할 일이 없다. git clone .git리포지터리를 로컬에 복사한다. git pull원격 리포의 내용을 가져온다. git add 선택한 파일이나 디렉터리를 staging area에 추가한다.git add .을 하면 현재 디렉터리 내 모든 파일이 staging 되는데, 제외할 파일이나 디렉터리를 .gi..

파이썬/Django 사용자 생성, JWT 토큰 발급/검증 예시

목표: Django의 기본 User 모델을 활용해서 Django 사용자를 생성하는 REST API 만들기 1. venv 활성화source bin/activate 2. 필요 패키지 설치, 설정pip install djangorestframework djangorestframework-simplejwt파일: 프로젝트명/settings.py...INSTALLED_APPS = [ ... 'rest_framework', 'rest_framework_simplejwt',]...REST_FRAMEWORK = { 'DEFAULT_AUTHENTICATION_CLASSES': [ 'rest_framework_simplejwt.authentication.JWTAuthentication', ..

파이썬/Django 개발환경 구축 (Ubuntu 24.04)

1. 필요한 패키지 식별 및 설치GitPIPapt updateapt install git python3-pip -y 2. 최상위 프로젝트 디렉터리 생성mkdir /mnt/sda1/project 3. 파이썬 가상 환경 (venv) 생성cd /mnt/sda1/projectpython -m venv 프로젝트명cd 프로젝트명(virtualenv등이 더 많은 기능을 제공하지만, venv로 충분하다고 판단) 4. venv 활성화source bin/activate 5. 필요 파이썬 모듈 설치pip install django 6. 장고 프로젝트 생성django-admin startproject 장고프로젝트명 7. 장고 서버 접속 테스트7.1. settings.py 수정파일: 장고프로젝트명/settings.py...AL..

우분투 서버 SSD 추가 장착/포맷/마운트 방법 (LVM 아님)

임베디드에 가까운 저사양 컴퓨터 등에서 LVM이 아닌 기존 방식으로 파티셔닝, 파일시스템 생성, 마운팅 방법을 설명함. 1. SSD 장착 2. 식별 (lsblk)root:/mnt/sda1/database# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTSsda 8:0 0 476.9G 0 disk`-sda1 8:1 0 476.9G 0 part /mnt/sda1mmcblk2 179:0 0 14.8G 0 disk|-mmcblk2p1 179:1 0 128M 0 part /media/boot`-mmcblk2p2 179:2 0 14.7G 0 part /(참고)SCSI/SATA/USB: "..

MariaDB/MySQL 데이터베이스 및 사용자 계정 생성 방법 (charset 포함)

1. root로 mariadb-client 접속mysql -u root -p 2. 데이터베이스 생성create database APIS_DB; 3. 사용자 생성create user APIS_USER@'localhost' identified by '패스워드'; 4. 권한 부여grant all privileges on APIS_DB.* to APIS_USER@'localhost';flush privileges; 5. 사용자 계정으로 접속mysql -u APIS_USER -p 6. 테이블 생성 테스트MariaDB [(none)]> use APIS_DBDatabase changedMariaDB [APIS_DB]> create table MEMBER ( -> id int NOT NULL AUTO_INCREM..

MariaDB/MySQL 데이터베이스 저장 위치 변경하기 (Ubuntu 24.04)

1. MariaDB 설치apt install mariadb-server -y 2. MariaDB 종료systemctl stop mysql 3. DB를 저장할 위치에 디렉터리 생성 및 퍼미션 설정mkdir /mnt/sda1/dbchown mysql:mysql /mnt/sda1/dbchmod 750 /mnt/sda1/db 4. 기본 MariaDB 파일 복사cp -Rp /var/lib/mysql/* /mnt/sda1/db(-R: recursive, -p: preserve permission mode/ownership/timestamp) 5. MariaDB 설정 변경 (datadir 설정)5.1. datadir 설정 파일 찾기root@ubuntu:/etc/mysql# grep -r datadir /etc/mys..

우분투 버전 확인 방법

1. lsb_release해당 리눅스 배포판에 대한 정보를 표시하는 프로그램이다.root@odroid:/etc/mysql# lsb_release -aNo LSB modules are available.Distributor ID: UbuntuDescription: Ubuntu 24.04.1 LTSRelease: 24.04Codename: noble 2. /etc/os-release해당 호스트의 릴리스 버전을 나타내는 파일이라고 하나, Ubuntu 24.04에서는 /usr/lib/os-release의 심볼릭 링크이다.root@ubuntu:/etc/mysql# file /etc/os-release/etc/os-release: symbolic link to ../usr/lib/os-..