homelab89 Docs Logs Legacy Files ☰ TOC 🌓
guidehomelab 2026-06-29neovimlazyvimdevopseditor

Neovim + LazyVim DevOps 환경 구성

날짜: 2026-02-21 목적: DevOps/SRE 작업(YAML, Bash, Dockerfile, Terraform, JSON)에 최적화된 nvim IDE 환경


설치 요약

항목 내용
Neovim v0.11.6 (appimage, /usr/local/bin/nvim)
배포판 LazyVim (starter template)
LSP yaml, bash, dockerfile, terraform, json (extras로 자동 구성)
파일 탐색 snacks.nvim (LazyVim 기본 picker) + ripgrep + fd
구문 강조 treesitter
아이콘 JetBrainsMono Nerd Font

설치된 구성 요소

시스템 패키지

sudo apt install -y ripgrep fd-find cmake

Neovim (appimage)

curl -LO https://github.com/neovim/neovim/releases/latest/download/nvim-linux-x86_64.appimage
chmod +x nvim-linux-x86_64.appimage
sudo mv nvim-linux-x86_64.appimage /usr/local/bin/nvim

Nerd Font

  • JetBrainsMono Nerd Font → ~/.local/share/fonts/
  • 터미널 에뮬레이터에서 “JetBrainsMono Nerd Font” 선택 필요

LazyVim

git clone https://github.com/LazyVim/starter ~/.config/nvim
rm -rf ~/.config/nvim/.git

커스텀 설정 파일

~/.config/nvim/lua/plugins/devops-extras.lua

DevOps 관련 LazyVim extras 활성화:

  • lang.yaml — yamlls LSP, YAML treesitter
  • lang.json — jsonls LSP, JSON treesitter
  • lang.docker — dockerls LSP, Dockerfile treesitter
  • lang.terraform — terraform-ls LSP, HCL treesitter

~/.config/nvim/lua/config/options.lua

  • 줄번호 + 상대 줄번호
  • 탭/들여쓰기 2칸 (YAML 기본)
  • 시스템 클립보드 연동 (unnamedplus)

주요 키바인딩 (LazyVim 기본)

동작
<Space> Leader key
<leader>ff 파일 검색 (picker)
<leader>fg 라이브 grep
<leader>e 파일 탐색기 (neo-tree)
<leader>l Lazy 플러그인 매니저
K LSP hover 문서
gd 정의로 이동
<leader>ca 코드 액션
<leader>cf 포맷팅

사후 작업 (수동)

  1. 터미널 폰트 설정: 터미널 에뮬레이터에서 “JetBrainsMono Nerd Font"로 변경
  2. LSP 서버 설치: 첫 nvim 실행 시 Mason이 자동으로 LSP 서버 설치 (:Mason으로 확인)
  3. treesitter 파서 설치: 파일을 열면 자동 설치됨 (:TSInstall yaml json bash dockerfile hcl)

업데이트 방법

nvim 내에서:

  • :Lazy sync — 플러그인 업데이트
  • :Mason — LSP 서버 관리
  • :TSUpdate — treesitter 파서 업데이트

Neovim 자체 업데이트:

curl -LO https://github.com/neovim/neovim/releases/latest/download/nvim-linux-x86_64.appimage
chmod +x nvim-linux-x86_64.appimage
sudo mv nvim-linux-x86_64.appimage /usr/local/bin/nvim

Files