在基于GCP的Ubuntu实例中安装Nexus



我正试图在GCP中的Ubuntu虚拟机实例上安装Nexus。

我对GCP和Ubuntu都很陌生,并遵循本教程实现了同样的目标:

  1. 安装Java:

sudo apt-get update
sudo apt install openjdk-8-jdk openjdk-8-jre
  1. 下载、提取和安装Nexus:

$ cd /opt
$ sudo wget https://download.sonatype.com/nexus/3/latest-unix.tar.gz
$ sudo tar -zxvf latest-unix.tar.gz
$ sudo mv /opt/latest-unix.tar.gz /opt/nexus
  1. 创建Nexus用户:

$ sudo adduser soumav
  1. 授予Nexus用户权限(soumav)

$ sudo chown -R soumav:soumav /opt/nexus
$ sudo chown -R soumav:soumav /opt/sonatype-work
$ sudo vim /opt/nexus/bin/nexus.rc
  1. 修改内存设置:

$ sudo vim /opt/nexus/bin/nexus.vmoptions
  1. 配置Nexus作为服务运行

sudo vim /etc/systemd/system/nexus.service

并复制以下内容:

[Unit]
Description=nexus service
After=network.target
[Service]
Type=forking
LimitNOFILE=65536
User=soumav
Group=soumav
ExecStart=/opt/nexus/bin/nexus start
ExecStop=/opt/nexus/bin/nexus stop
User=soumav
Restart=on-abort
[Install]
WantedBy=multi-user.target
  1. 启动Nexus

$ sudo systemctl enable nexus
$ sudo systemctl start nexus
$ sudo systemctl status nexus

但是,我有一对步骤的问题:

  1. 步骤'4'中,执行以下命令:$ sudo vim /opt/nexus/bin/nexus.rc时,我得到一个/opt/nexus/bin/neuxus.rc"[权限被拒绝]。我能够克服这一点,并能够编辑next.rc文件以及通过cd到bin目录的next.vmoptions。

  2. 步骤'6'中,当我执行$ sudo systemctl enable nexus并发布尝试启动服务:$ sudo systemctl start nexus,我得到a($ tail -f /opt/sonatype-work/nexus3/log/nexus.log):

    Jul 29 17:16:26 nexus systemd[5832]: nexus.service: Failed to execute command: Not a directory
    Jul 29 17:16:26 nexus systemd[5832]: nexus.service: Failed at step EXEC spawning /opt/nexus/bin/nexus: Not a directory
    

我哪里出错了?

您的错误出现在步骤#2。最后一个命令将压缩文件而不是未压缩文件夹移动到/opt/nexus。这就是你错误的原因:

Jul 29 17:16:26 nexus systemd[5832]: nexus.service: Failed at step EXEC spawning /opt/nexus/bin/nexus: Not a directory

步骤#2的正确命令应该如下所示:

$ cd /opt
$ sudo wget https://download.sonatype.com/nexus/3/latest-unix.tar.gz
$ sudo tar -zxvf latest-unix.tar.gz
$ sudo mv /opt/nexus-3.32.0-03 /opt/nexus

一旦你将正确的未压缩文件夹移动到正确的文件夹,你可以按照教程

最新更新