TopDev

Sử dụng Nexus repository để lưu trữ các thư viện như thế nào

minhu 📖 2 phút đọc

Để sử dụng Nexus Repository để lưu trữ các thư viện (packages, artifacts), bạn cần thực hiện theo các bước cơ bản sau đây. Nexus hỗ trợ nhiều định dạng như Maven, npm, Docker, NuGet, v.v. Ở đây mình sẽ hướng dẫn cách sử dụng Nexus để lưu trữ thư viện Maven, là trường hợp phổ biến nhất với Java.



🔧 1. Cài đặt Nexus Repository#

Bạn có thể cài đặt Nexus OSS (miễn phí) theo các cách:

docker run -d -p 8081:8081 --name nexus sonatype/nexus3

Sau khi chạy, truy cập: http://localhost:8081

Mặc định tài khoản admin:

  • Username: admin

  • Password: kiểm tra file: admin.password trong thư mục cài đặt Nexus (/nexus-data/admin.password nếu dùng Docker)



🏗 2. Tạo repository để lưu trữ#

Với Maven, nên tạo 3 loại repo:#

Tên Repo Loại Repository Mục đích
maven-releases Hosted Lưu thư viện release
maven-snapshots Hosted Lưu snapshot builds
maven-public Group Gom nhóm central + hosted

Tạo repository:#

Vào menu Settings (⚙️)RepositoriesCreate repository → chọn maven2 (hosted)

  • Name: maven-releases

  • Version Policy: Release

  • Deployment Policy: Allow redeploy (nếu cần ghi đè)

Tương tự, tạo:

  • maven-snapshots (chọn Version Policy là Snapshot)

  • maven-public (Group → Add cả 3 repo: central, maven-releases, maven-snapshots)



⚙️ 3. Cấu hình Maven để deploy/thao tác#

Sửa file settings.xml của Maven:#

<servers> <server> <id>nexus-releases</id> <username>admin</username> <password>your-password</password> </server> <server> <id>nexus-snapshots</id> <username>admin</username> <password>your-password</password> </server> </servers>

Trong file pom.xml, thêm cấu hình deploy:#

<distributionManagement> <repository> <id>nexus-releases</id> <url>http://localhost:8081/repository/maven-releases/</url> </repository> <snapshotRepository> <id>nexus-snapshots</id> <url>http://localhost:8081/repository/maven-snapshots/</url> </snapshotRepository> </distributionManagement>



📦 4. Deploy thư viện lên Nexus#

Trong thư mục dự án:

mvn deploy

Lưu ý: Project phải có cấu hình groupId, artifactId, version chuẩn.



🧪 5. Sử dụng thư viện từ Nexus#

Nếu bạn muốn dùng thư viện bạn đã deploy vào Nexus từ một project khác, chỉ cần cấu hình:

<repositories> <repository> <id>nexus</id> <url>http://localhost:8081/repository/maven-public/</url> </repository> </repositories>

Và sử dụng dependency như bình thường:

<dependency> <groupId>com.example</groupId> <artifactId>my-library</artifactId> <version>1.0.0</version> </dependency>



Nếu bạn đang dùng npm, Docker, hoặc định dạng khác ngoài Maven, mình cũng có thể hướng dẫn cụ thể theo nhu cầu nhé.

Bạn định dùng Nexus cho loại thư viện nào: Maven, npm, Docker, hay kiểu khác?

Bài liên quan trong #Tin tức

✓ Đã sao chép link