本文主要是介绍docker搭建nexus服务器,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
拉镜像
docker pull sonatype/nexus3:3.28.0
运行nexus
docker run -it --name nexus3 sonatype/nexus3:3.28.0 sh
nexus的配置文件放在
cat /opt/sonatype/nexus/etc/nexus-default.properties# Jetty section
application-port=8081
application-host=0.0.0.0
nexus-args=${jetty.etc}/jetty.xml,${jetty.etc}/jetty-http.xml,${jetty.etc}/jetty-requestlog.xml
nexus-context-path=/${NEXUS_CONTEXT}# Nexus section
nexus-edition=nexus-pro-edition
nexus-features=\nexus-pro-feature
nexus.clustered=false
把nexus的目录挂载到宿主机
docker run -d --name nexus3 --restart=always -v /var/lib/it/data/nexus3:/nexus-data sonatype/nexus3:3.28.0
报错
mkdir: cannot create directory '../sonatype-work/nexus3/log': Permission denied
mkdir: cannot create directory '../sonatype-work/nexus3/tmp': Permission denied
OpenJDK 64-Bit Server VM warning: Cannot open file ../sonatype-work/nexus3/log/jvm.log due to No such file or directoryWarning: Cannot open log file: ../sonatype-work/nexus3/log/jvm.log
Warning: Forcing option -XX:LogFile=/tmp/jvm.log
java.io.FileNotFoundException: ../sonatype-work/nexus3/tmp/i4j_ZTDnGON8hezynsMX2ZCYAVDtQog=.lock (No such file or directory)at java.io.RandomAccessFile.open0(Native Method)at java.io.RandomAccessFile.open(RandomAccessFile.java:316)at java.io.RandomAccessFile.<init>(RandomAccessFile.java:243)at com.install4j.runtime.launcher.util.SingleInstance.check(SingleInstance.java:72)at com.install4j.runtime.launcher.util.SingleInstance.checkForCurrentLauncher(SingleInstance.java:31)at com.install4j.runtime.launcher.UnixLauncher.checkSingleInstance(UnixLauncher.java:88)at com.install4j.runtime.launcher.UnixLauncher.main(UnixLauncher.java:67)
java.io.FileNotFoundException: /nexus-data/karaf.pid (Permission denied)at java.io.FileOutputStream.open0(Native Method)at java.io.FileOutputStream.open(FileOutputStream.java:270)at java.io.FileOutputStream.<init>(FileOutputStream.java:213)at java.io.FileOutputStream.<init>(FileOutputStream.java:101)at org.apache.karaf.main.InstanceHelper.writePid(InstanceHelper.java:127)at org.apache.karaf.main.Main.launch(Main.java:243)at org.sonatype.nexus.karaf.NexusMain.launch(NexusMain.java:113)at org.sonatype.nexus.karaf.NexusMain.main(NexusMain.java:52)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at com.exe4j.runtime.LauncherEngine.launch(LauncherEngine.java:85)at com.install4j.runtime.launcher.UnixLauncher.main(UnixLauncher.java:69)
java.lang.RuntimeException: /nexus-data/log/karaf.log (No such file or directory)at org.apache.karaf.main.util.BootstrapLogManager.getDefaultHandlerInternal(BootstrapLogManager.java:102)at org.apache.karaf.main.util.BootstrapLogManager.getDefaultHandlersInternal(BootstrapLogManager.java:137)at org.apache.karaf.main.util.BootstrapLogManager.getDefaultHandlers(BootstrapLogManager.java:70)at org.apache.karaf.main.util.BootstrapLogManager.configureLogger(BootstrapLogManager.java:75)at org.apache.karaf.main.Main.launch(Main.java:244)at org.sonatype.nexus.karaf.NexusMain.launch(NexusMain.java:113)at org.sonatype.nexus.karaf.NexusMain.main(NexusMain.java:52)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at com.exe4j.runtime.LauncherEngine.launch(LauncherEngine.java:85)at com.install4j.runtime.launcher.UnixLauncher.main(UnixLauncher.java:69)
Caused by: java.io.FileNotFoundException: /nexus-data/log/karaf.log (No such file or directory)at java.io.FileOutputStream.open0(Native Method)at java.io.FileOutputStream.open(FileOutputStream.java:270)at java.io.FileOutputStream.<init>(FileOutputStream.java:213)at org.apache.karaf.main.util.BootstrapLogManager$SimpleFileHandler.open(BootstrapLogManager.java:193)at org.apache.karaf.main.util.BootstrapLogManager$SimpleFileHandler.<init>(BootstrapLogManager.java:182)at org.apache.karaf.main.util.BootstrapLogManager.getDefaultHandlerInternal(BootstrapLogManager.java:100)... 12 more
Error creating bundle cache.
Unable to update instance pid: Unable to create directory /nexus-data/instances
需要给宿主机的挂载目录设置权限777
chmod 777 /var/lib/it/data/nexus3
参考
https://hub.docker.com/r/sonatype/nexus3
这篇关于docker搭建nexus服务器的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!