環境
- CentOS7
- java 1.8.0_212
Nexus環境構築
1.アプリをダウンロード
wget https://download.sonatype.com/nexus/3/latest-unix.tar.gz
2.ダウンロードしたアプリを任意のディレクトリへ移動
sudo mv latest-unix.tar.gz /opt
cd /opt
3.対象ファイルを解凍、不要なファイルを削除、ディレクトリ名変更
sudo tar xvfz latest-unix.tar.gz
sudo rm -rf latest-unix.tar.gz
sudo mv nexus-3.16.1-02/ nexus3
4.権限変更
sudo chown -R centos:centos nexus3/ sonatype-work/
5.起動
nexus3/bin/nexus run
※「Started Sonatype Nexus.」がコンソールに出力されるまで待機
※「http://nexus-ip-address:8081/」へアクセス
※外部からアクセスする場合は、8081ポートの開放が必要
サインイン
- デフォルトの管理ユーザー情報
ユーザー | パスワード |
---|---|
admin | admin123 |
Dockerリポジトリ作成
- リポジトリ名をdocker-reposに設定
- 8083ポートでHTTP公開
Nexusへイメージをプッシュ(クライアント操作)
1.下記のファイルを/etc/dockerディレクトリへ作成
daemon.json
{
"insecure-registries": ["nexus-ip-address:docker-repos-port"],
"disable-legacy-registry": true
}
※http://docs.docker.jp/engine/reference/commandline/dockerd.html
※今回の場合、docker-repos-portは8083
2.Dockerサービスを再起動
sudo systemctl restart docker
3.Dockerリポジトリへログイン
$ sudo docker login -u admin -p admin123 nexus-ip-address:docker-repos-port
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
Login Succeeded
4.プッシュしたいイメージに対して下記の形でタグを打つ
sudo docker tag target-image:target-tag nexus-ip-address:docker-repos-port/image:tag
5.プッシュ
sudo docker push nexus-ip-address:docker-repos-port/image:tag