現在、ハーバーイメージレジストリは、コンテナイメージを保存するために広く使用されています。拡張可能なAPIがあり、WebUIは画像のコンテンツ署名と検証をサポートします。ハーバーイメージは、複数のハーバーインスタンスに複製できます。
この記事では、Ubuntu20.04の安定バージョンにharborをインストールする方法について説明します。
前提条件
- letsencrypt証明書を取得するためにAレコードにマップされたドメイン。 (独自の証明書をお持ちの場合、これは必要ありません)
- サーバーへのインターネット接続。
- 最新バージョンのdockerおよびdocker-composeがインストールされています。
構成
まず、パッケージリポジトリを更新します。
$ sudo apt update
TLS暗号化を使用して、安全な環境でハーバーにアクセスできます。このために、letsencrypt証明書を生成します。証明書を取得するには、certbotパッケージをインストールする必要があります。
(独自の証明書を使用する場合は、手順を除外してください)
$ sudo apt install certbot -y
次に、証明書を生成し、ドメイン名とメールアドレスを使用します。
(独自の証明書を使用する場合は、手順を除外してください)
$ sudo certbot certonly --standalone -d "harbor.yourdomain.com" --preferred-challenges http --agree-tos -n -m "[email protected]" --keep-until-expiring>
デフォルトでは、証明書は/etc/letsencrypt/live/harbor.yourdoain.com/
に生成されますハーバーパッケージのダウンロードを始めましょう。次のスクリプトをコピーして、ターミナルに貼り付けます。港の最新バージョンをダウンロードします。
$ curl -s https://api.github.com/repos/goharbor/harbor/releases/latest | grep browser_download_url | cut -d '"' -f 4 | grep '\.tgz$' | wget -i -
次のコマンドを使用してコンテンツを抽出します。
$ tar zxvf harbor-offline-installer-v*.tgz
ハーバーディレクトリを取得し、それに変更します。
$ cd harbor
インストールスクリプトファイルとその他の構成を確認できます。構成の例は一時ファイルに記載されています。 harbor.ymlファイルにコピーするだけです。
$ cp harbor.yml.tmpl harbor.yml
harbor.ymlファイルを開き、ホスト名、httpおよびhttpsポート、証明書パス、管理ダッシュボードパスワードなどの必要な変更を加えます。独自の証明書をお持ちの場合は、それらが定義したパスにあることを確認してください。
$ vim harbor.yml
また、同じファイルで、データベースパスワード、接続の最大数、およびイメージを保存するボリュームを構成できます。最後にファイルを保存します。
次に、以下に示すようにインストールスクリプトを実行します。公証人とchartmuseuはオプションです。
Notaryは、コンテンツを検証して安全に公開するキーを使用して画像にデジタル署名するのに役立ちます。 Chartmuseumはヘルムチャートリポジトリを提供します。
$ sudo ./install.sh --with-notary --with-chartmuseum
インストールが完了した後。以下にポートをリストして確認してください。
$ sudo ss -tulpan | grep -i list
また、データボリュームにコンテンツが含まれていることを確認してください。そして、ログディレクトリを参照してください。
$ ls /data
$ ls /var/log/harbor/
ハーバーWebアクセス
これで、ハーバーWebにアクセスできます。 https://harbor.yourdomain.com
と入力しますハーバーWebにアクセスするには、上記のharbor.yml構成で定義したクレデンシャルを使用します。
ハーバーダッシュボード
ダッシュボードは本当に素晴らしく、使いやすいです。プロジェクトを作成し、画像を送信して保存し、展開で使用できます。
結論
この記事では、Ubuntuにharborをインストールする方法を説明します。このプロセスは、LinuxのすべてのDebianファミリで同じです。楽しんでいただければ幸いです。