nekop's blog

OpenShift / JBoss / WildFly / Infinispanの中の人 http://twitter.com/nekop

NexusをDockerで動作させる

Nexusは基本的にOpenShift上で動作させて使ってるんだけど、自分の場合はOpenShift環境が複数あってNexusも作って壊して、みたいなことが多いという特殊な状態なので、別の環境にマスターとなるミラーがあったほうが良さそうだなぁ、ということで自分の汎用サーバにしているRHEL 7 VMNexusを動かすことにした。

データボリュームはホストマウントでsystemdのUnitファイル書いておしまい。

sudo mkdir /sonatype-work && sudo chmod 777 /sonatype-work
sudo sh -c "cat << EOM > /etc/systemd/system/nexus.service
[Unit]
Description=Nexus on Docker
Requires=docker.service
After=docker.service

[Service]
Type=simple
ExecStartPre=-/usr/bin/docker stop nexus
ExecStartPre=-/usr/bin/docker rm nexus
ExecStartPre=/usr/bin/docker pull sonatype/nexus
ExecStart=/usr/bin/docker run --name nexus -p 8081:8081 -v /sonatype-work:/sonatype-work:Z sonatype/nexus

[Install]
WantedBy=multi-user.target
EOM"
sudo systemctl start nexus && sudo systemctl enable nexus