Nexus Repository Manager 3의 Raw Repository 기능을 활용하여 VS Code 설치 파일, VSIX 플러그인, JDK, Node.js 등 개발 도구를 중앙에서 관리하는 방법을 알아봅니다. 자동 동기화 스크립트와 신규 PC 세팅 자동화 방법까지 함께 정리합니다.

Nexus3 Raw Repository로 VSCode 설치파일 및 VSIX 플러그인 사내 자료실 구축하기
회사 내부망이나 인터넷 사용이 제한된 환경에서는 VS Code 설치 파일이나 플러그인을 매번 외부 사이트에서 다운로드하기 어려운 경우가 많습니다.
특히 신규 개발자 PC를 세팅하거나 여러 서버에 동일한 개발 환경을 구성해야 하는 경우, 설치 파일과 확장 프로그램을 중앙에서 관리할 수 있는 저장소가 있으면 운영 효율이 크게 향상됩니다.
Nexus Repository Manager 3는 일반적으로 Maven, NPM, Docker Registry 용도로 많이 사용되지만, Raw Repository 기능을 활용하면 일반 파일 저장소처럼 사용할 수 있습니다.
이번 글에서는 Nexus3를 활용하여 VS Code 설치 파일과 VSIX 확장 프로그램을 관리하고, 최신 플러그인을 자동으로 동기화하는 방법까지 살펴보겠습니다.
Nexus를 사내 자료실로 활용하는 이유
Nexus Raw Repository는 파일 형식에 제한이 없어 다양한 설치 파일을 저장할 수 있습니다.
대표적으로 다음과 같은 파일들을 중앙에서 관리할 수 있습니다.
분류예시
| IDE | VS Code, IntelliJ, Eclipse |
| 개발도구 | Git, Docker Desktop |
| 런타임 | JDK, Node.js |
| DB 도구 | DBeaver, MySQL Client |
| 드라이버 | JDBC Driver, ODBC Driver |
| 문서 | 매뉴얼, PDF |
| 배포파일 | 사내 프로그램, 패치 파일 |
특히 신규 개발자 온보딩 과정에서 필요한 파일을 한 곳에서 제공할 수 있다는 장점이 있습니다.
Nexus Raw Repository 생성
Nexus 관리자 화면에서 다음 메뉴로 이동합니다.
Repositories
→ Create Repository
→ raw (hosted)
권장 설정
항목설정
| Name | pds |
| Type | raw (hosted) |
| Deployment Policy | Allow redeploy |
| Write Policy | Allow |
| Blob Store | default |
| Online | 체크 |
생성이 완료되면 Raw Repository는 다음과 같은 형태로 접근할 수 있습니다.
NEXUS_URL/repository/pds/
실제 환경에서는 사내 Nexus 주소 또는 Reverse Proxy 주소를 사용하면 됩니다.
추천 폴더 구조
자료실 형태로 운영한다면 용도별 디렉터리를 미리 구성하는 것이 좋습니다.
pds/
├── vscode/
│ ├── x64/
│ ├── arm64/
│ └── extensions/
├── intellij/
├── eclipse/
├── jdk/
├── nodejs/
├── mysql/
├── docker/
├── tools/
├── drivers/
├── manuals/
└── patches/
이 구조를 사용하면 버전 관리와 접근 권한 관리가 훨씬 수월해집니다.
VS Code 설치 파일 업로드
Nexus Browse 메뉴에서 업로드를 진행합니다.
Browse
→ pds
→ Upload
예를 들어 다음 경로에 업로드할 수 있습니다.
Directory : vscode/x64
File : VSCodeUserSetup-x64-1.124.2.exe
업로드 완료 후 파일은 다음과 같은 경로로 다운로드할 수 있습니다.
NEXUS_URL/repository/pds/vscode/x64/VSCodeUserSetup-x64-1.124.2.exe
Linux에서 다운로드
wget \
NEXUS_URL/repository/pds/vscode/x64/VSCodeUserSetup-x64-1.124.2.exe
macOS에서 다운로드
curl -O \
NEXUS_URL/repository/pds/vscode/x64/VSCodeUserSetup-x64-1.124.2.exe
VS Code 플러그인(VSIX) 중앙 관리
사내망 환경에서는 VS Code Marketplace 접근이 불가능한 경우가 많습니다.
이때 VSIX 파일을 다운로드하여 Nexus에 보관하면 인터넷 연결 없이도 동일한 확장 프로그램을 설치할 수 있습니다.
저장 구조 예시
pds/
└── vscode/
└── extensions/
VSIX 설치
code --install-extension LiveServer.vsix
또는
code --install-extension phptools.vsix
설치된 확장 프로그램 목록 확인
code --list-extensions
최신 VSIX 자동 다운로드
확장 프로그램을 수동으로 관리하면 버전 업데이트를 놓치기 쉽습니다.
VS Code Marketplace API를 이용하면 최신 버전을 자동 조회하여 다운로드할 수 있습니다.
자동 다운로드 스크립트 예시
#!/bin/bash
PUBLISHER="ritwickdey"
EXTENSION="LiveServer"
VERSION=$(curl -s \
-H "Content-Type: application/json" \
-H "Accept: application/json;api-version=3.0-preview.1" \
-X POST \
https://marketplace.visualstudio.com/_apis/public/gallery/extensionquery \
-d "{
\"filters\": [{
\"criteria\": [{
\"filterType\": 7,
\"value\": \"$PUBLISHER.$EXTENSION\"
}]
}],
\"flags\": 103
}" | jq -r '.results[0].extensions[0].versions[0].version')
echo "Latest Version: $VERSION"
wget -O ${EXTENSION}-${VERSION}.vsix \
"https://${PUBLISHER}.gallery.vsassets.io/_apis/public/gallery/publisher/${PUBLISHER}/extension/${EXTENSION}/${VERSION}/assetbyname/Microsoft.VisualStudio.Services.VSIXPackage"
Nexus 자동 업로드
다운로드한 VSIX 파일은 Nexus에 바로 업로드할 수 있습니다.
curl -u USERNAME:PASSWORD \
--upload-file ${EXTENSION}-${VERSION}.vsix \
NEXUS_URL/repository/pds/vscode/extensions/${EXTENSION}-${VERSION}.vsix
이를 통해 최신 확장 프로그램 저장소를 자동 유지할 수 있습니다.
여러 플러그인 일괄 동기화
관리 대상 확장 목록을 배열로 관리하면 자동화가 더욱 편리합니다.
[
"ritwickdey.LiveServer",
"DEVSENSE.phptools-vscode",
"esbenp.prettier-vscode",
"dbaeumer.vscode-eslint",
"eamodio.gitlens",
"Vue.volar",
"ms-python.python"
]
스크립트에서 반복 처리하여 다운로드 후 Nexus에 업로드하도록 구성할 수 있습니다.
Cron을 이용한 자동 동기화
매일 새벽 3시에 실행하도록 등록합니다.
crontab -e
0 3 * * * /opt/scripts/sync-vscode-extension.sh
운영 환경에서는 로그 파일을 남기도록 구성하는 것을 권장합니다.
0 3 * * * /opt/scripts/sync-vscode-extension.sh >> /var/log/vscode-sync.log 2>&1
신규 PC 세팅 자동화
VS Code 설치 파일 다운로드
wget \
NEXUS_URL/repository/pds/vscode/x64/VSCodeUserSetup-x64-1.124.2.exe
플러그인 다운로드
wget \
NEXUS_URL/repository/pds/vscode/extensions/LiveServer-5.7.9.vsix
플러그인 설치
code --install-extension LiveServer-5.7.9.vsix
이 방식은 개발자 PC 초기 세팅 시간을 크게 단축시켜 줍니다.
운영 시 추가로 추천하는 구성
실제 운영 환경에서는 VS Code만 관리하기보다 다음 항목도 함께 관리하는 것을 권장합니다.
- OpenJDK
- Oracle JDK
- Node.js
- Git
- Maven
- Gradle
- Docker Desktop
- IntelliJ IDEA
- DBeaver
- MySQL Workbench
- JDBC Driver
- 사내 배포 패키지
개발 환경에 필요한 모든 파일을 Nexus에서 제공하면 버전 표준화와 설치 자동화가 훨씬 쉬워집니다.
마무리
Nexus Repository Manager 3의 Raw Repository 기능을 활용하면 단순한 Maven 저장소를 넘어 사내 파일 서버 및 개발 도구 자료실로 활용할 수 있습니다.
특히 인터넷이 제한된 내부망 환경에서는 VS Code 설치 파일과 VSIX 확장 프로그램을 중앙에서 관리할 수 있어 개발 환경 표준화에 큰 도움이 됩니다.
또한 자동 동기화 스크립트와 Cron 작업을 함께 구성하면 최신 플러그인 버전을 지속적으로 유지할 수 있으며, 신규 개발자 PC 세팅 시간도 크게 단축할 수 있습니다.
Nexus를 이미 운영하고 있다면 Maven 저장소 용도로만 사용하지 말고 별도의 PDS 저장소를 구성하여 개발 도구 자료실까지 함께 운영해 보시기 바랍니다.
'서버 & 인프라' 카테고리의 다른 글
| Apache에서 HTTP Method 차단 테스트 시 반드시 확인해야 할 사항 (0) | 2026.06.05 |
|---|---|
| GitLab Runner를 이용한 Spring Boot 자동 배포 구축하기 (AlmaLinux 9) (0) | 2026.06.05 |
| AlmaLinux 9에서 Spring Boot 서비스 등록 및 운영하기 (systemd + Apache Reverse Proxy) (0) | 2026.06.05 |
| DDNS란 무엇인가? 유동 IP 환경에서 꼭 필요한 이유와 활용 방법 (0) | 2026.06.04 |
| GitLab Runner SSH 비밀번호 없이 원격 서버 자동 배포 설정하기 (0) | 2026.06.04 |
