搭建maven私有仓库
基于nexus
安装包下载: 直接去官网下载即可, 这里不做过多赘述. 下载完成之后执行bin目录下的 nexus start
命令即可启动nexus. 前台运行 nexus run
报错信息如下
[root@iZ8vb961l1x1eel1ptzjiyZ nexus-3.80.0-06]# ./bin/nexus run
WARNING: ************************************************************
WARNING: Detected execution as "root" user. This is NOT recommended!
WARNING: ************************************************************
OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000757000000, 2835349504, 0) failed; error='Not enough space' (errno=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (mmap) failed to map 2835349504 bytes. Error detail: committing reserved memory.
# An error report file with more information is saved as:
# /data/webroot/nexus-3.80.0-06/hs_err_pid1934.log
Not enough space
报错信息很明确, 空间不足, 通过 free -m(也可以使用 swapon -s , 没有任何输出代表没配置过交换空间)
查看, 结果如下:
[root@iZ8vb961l1x1eel1ptzjiyZ nexus-3.80.0-06]# free -m
total used free shared buff/cache available
Mem: 3645 2154 441 0 1050 1244
Swap: 0 0 0
发现没有交换空间, 所以需要添加交换空间, 然后重启nexus即可.
检查可用的存储空间
通常,我们建立一个单独的分区作为swap。然而有时候由于硬件或软件的限制,新建分区的方式无法实现,这种情况下就可以建立一个swap文件来实现同样的功能。
开始之前,先检查一下磁盘的可用空间。输入如下指令: df -h
[root@iZ8vb961l1x1eel1ptzjiyZ nexus-3.80.0-06]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 1.8G 0 1.8G 0% /dev
tmpfs 1.8G 0 1.8G 0% /dev/shm
tmpfs 1.8G 624K 1.8G 1% /run
tmpfs 1.8G 0 1.8G 0% /sys/fs/cgroup
/dev/vda1 40G 29G 8.7G 77% /
/dev/vdb1 40G 12G 26G 31% /data
tmpfs 365M 0 365M 0% /run/user/0
上面是本人的服务器信息, 自己服务器信息以实际为准. /dev/vda1 是系统盘, 空间也所剩无几, /dev/vdb1 是数据盘, 数据盘剩余空间为 26G, 所以我们可以在数据盘上建立swap文件。
合适的swap空间是多大?关于这个问题有很多种选择,这取决于你的应用需求和你个人的偏好。一般来说,内存容量的两倍就是个不错的起点。
我的系统内存有4GB,如果设置8GB的swap会占据太多空间,所以我决定只设置4GB就好。
创建Swap文件
接下来我们将在文件系统上创建swap文件。我们要在数据盘(/data)下创建一个名叫swapfile的文件,当然你也可以选择你喜欢的文件名。该文件分配的空间将等于我们需要的swap空间。
最快捷的创建方式是 fallocate
命令,该命令能够创建一个预分配指定大小空间的文件。输入如下指令创建一个4GB的文件:
fallocate -l 4G
现在我们已经有了swap文件,但系统还不知道应该使用该文件作为swap,这就需要我们告知系统将该文件格式化为swap并启用起来。 首先我们需要 更改swap文件的权限,确保只有root才可读
,否则会有很大的安全隐患。使用chmod命令进行权限操作: 最后, 需要将其设置为swap文件。输入如下指令:
mkswap /data/swapfile
然后我们需要启用swap文件。输入如下指令:
swapon /data/swapfile
现在我们已经成功创建了swap文件并启用了它。接下来我们需要设置开机自动启用swap文件。
开机自动启用swap文件
我们需要编辑 /etc/fstab
文件,该文件用于保存系统启动时需要挂载的文件系统。使用vi或vim打开该文件:
vim /etc/fstab
在文件末尾添加如下内容:
/data/swapfile swap swap defaults 0 0
保存并退出文件。现在我们已经设置好了swap文件,系统将在开机时自动启用它。 /data/swapfile
是创建的文件路径, 以实际为准.
但可是
进行到此步骤, 环境与服务均可运行, 可但是!!! 太吃资源了
, 阿里云服务器, 2C4G, 4G的swap文件, 系统会接近假死, 巨卡无比.
如果你是高端用户, 资源无限, 请忽略下面信息.如果阿里云资源也是有限, 参考下面的内容:
- JAVA轻量版Maven仓库
- Golang轻量版Maven仓库
- Gitee 与 Github 也可作为 Jar 包的仓库.
- Gitea是golang实现的, 代码托管服务, 本人的代码私有仓库通过Gitea搭建, 因此选择Gitea实现Jar包托管, Gitea实现Jar包托管