概要 私は 1 年以上 Docker を使用しています。最近、サービスをすばやくオーケストレーションしているときに、シェル スクリプトで使用されている git がまだネイティブであることに気付きました。 そこでgitをコンテナ化することに決め、dockerhubで検索したところ、ダウンロード量が比較的多いこのイメージを見つけました。 dockerfileを見た後、ニーズに適していないと感じました ここではボリュームや ssh は提供されていません。リポジトリをホスト マシンにマップすることも、プライベート リポジトリをクローンする機能もありません (ささやき声: どちらも可能ですが、不便です)。他の gitclient イメージも同様です。
ミラーアドレス この記事のイメージは dockerhub にプッシュされています。必要に応じて直接使用できます: https://hub.docker.com/r/wuliangxue/git 車輪 まず、Docker Hub アカウントが必要です。次に、Docker を使用してサーバーにログインし、イメージを Docker Hub リポジトリにプッシュします。これにより、将来の移行が容易になります。 任意のディレクトリにgit.dockerfileファイルを作成する Dockerfileに以下を入力します ここで簡単に説明しますと、当初はUbuntu 18.04ベースのミラーが提供されていましたが、サイズが大きすぎたため、Alpineに置き換えられました。国内ユーザーは Linux ソフトウェア ソースを国内ミラーに切り替える必要があります。そうしないと、ソフトウェアのインストール時にさまざまな問題が発生します。このイメージ自体はプロジェクトのクローン作成用なので、git と ssh のみがインストールされます。以下は、プライベート ウェアハウスのクローンを作成し、対応する ssh ディレクトリ ボリュームを開くための準備です。作業ディレクトリが設定されているため、git clone 時にデフォルトのプロジェクトは イメージを構築する 次のコマンドを入力します: 「Successfully」と表示されたら、イメージが正常に構築されたことを意味します。 ここでは、Ubuntu 18.04 をベースに構築されたイメージのサイズを比較します。タグ 0.1 のイメージは Ubuntu 18.04 [187M] をベースに構築されており、タグ 0.1-alpine のイメージは alpine:3.12 [30.1M] をベースに構築されています。 ミラーの使用 まず、作成したイメージを使用してパブリックリポジトリをクローンし、次のコマンドを実行します。 docker run --rm --name git \ -v "$(pwd)":/git/repo wuliangxue/git:0.1-alpine \ git クローン https://github.com/docker-library/mysql.git このリポジトリはクローンされました。 クローンの詳細を表示する場合は、前のコマンドに docker run -it --rm --name git \ -v "$(pwd)":/git/repo wuliangxue/git:0.1-alpine \ git クローン https://github.com/docker-library/mysql.git プライベート倉庫を複製する必要がある場合はどうすればよいですか? ? docker run -it --rm --name git \ -v "$(pwd)":/git/repo \ -v "$(pwd)/id_rsa":/root/.ssh/id_rsa \ -v "$(pwd)/id_rsa.pub":/root/.ssh/id_rsa.pub \ wuliangxue/git:0.1-alpine git クローン [email protected]:wuliangxue/douyu.git ここで 「yes」と入力して Enter キーを押すと、プライベート ウェアハウスが複製されます。 最後に、このホイールを Dockerhub にプッシュして、次回サーバーを変更するときに直接プルして使用できるようにします。 これで、Docker を使ってクローンリポジトリを使用して Git イメージを構築する方法についての記事は終了です。Docker による Git イメージの構築の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: HTML テーブルタグチュートリアル (20): 行の背景色属性 BGCOLOR
この記事の例では、タイプライター効果を実現するためのjsの具体的なコードを参考までに共有しています。...
問題の説明データ転送に Nginx を使用し、フロントエンドとバックエンドが分離された Spring...
1.Jenkinsのインストール手順: https://www.jb51.net/article/1...
定義と使用法<input> タグはユーザー情報を収集するために使用されます。 type ...
オンラインショッピングモールデータベース - ユーザー情報データ運用プロジェクトの説明電子商取引の台...
この記事では、Dockerでイメージ情報を表示する方法を学ぶ必要があります。 1. imagesコマ...
1. RPM パッケージのインストール手順: 1. soft.version.rpm などの対応する...
序文MySQL をインストールすると、通常はスーパーユーザー root を作成します。多くの人がこの...
目次1. インデックスとは何ですか? 2. インデックスはなぜ必要なのでしょうか? 3. インデック...
具体的なコードは次のとおりです。 <div id="ボックス"> &...
この記事は、透明度を変えてカルーセルにするXiaomiカルーセルを真似て書いたものです。初心者なので...
目次パーティション分割メカニズムSELECTクエリINSERT操作DELETE操作更新操作パーティシ...
Vue のフロントエンドとバックエンドのポートが一致していませんconfig index.jsファイ...
目次1. Bootstrap グリッドレイアウト2. 垂直方向の配置2.1 行タグの垂直方向の配置を...
今日私が書こうとしている内容では、プログラムは 7 時間近く実行され、データベースに 1,000 万...