クラウドネイティブ環境の構築-Dockerはイメージを作成し、ハーバーをプッシュおよびプルします

ミラーを作成する 

2つの方法

1. Dockerfile [build]によると

2.実行中のコンテナに基づいて変更した後[コミット]

画像とコンテナの関連付け

1.Dockerfileに基づいてミラーを作成します

1、mkdir dockerfile / lib / centos7base /

ディレクトリを作成する

2.Dockerfileを作成します

vim Dockerfile

 

次に、ミラーを作成します

docker build -tpython。

--tag、-t: ミラー名とタグ

プロセス分析
dockerのコンパイルプロセスを見てみましょう

コンパイルの最初のステップは既存のPythonを再利用します。
重要な点は、2番目のステップ
b48566f8cf2cが実際にはPythonイメージに基づいて生成された一時的なコンテナーIDであるということです。
インストールプロセスを無視して最後までスキップします。

 

最後に、一時的に生成されたコンテナーに従って、docker commitはイメージファイルを生成し、最後に一時的なコンテナーを削除します(ブログの冒頭の図と比較してください)
 

第三に、コンテナに基づいてイメージを構築します

 1.ミラーを引き出します

docker run -it centos

(run =(pull start exec))

2.vimを表示する

3.vimをインストールします 

yum install vim

 

 4.コンテナを終了します

出口

 5.コンテナを提出します


これで、実行中のコンテナに従って生成されたイメージはまだローカルにあり、以下を送信してプライベートサーバーハーバーにプッシュする必要があります

 

第四に、画像をハーバーにプッシュします

スタートハーバー

install.shを実行して起動することもできます。

docker - compose.ymldocker -composeが使用されていることを認識しており、バックグラウンドスタートアップを使用してハーバーを起動できることがわかります。

 コンテナを停止します

docker-compose stop

バックグラウンドでコンテナを起動します

docker-compose up -d

ハーバーにログイン

docker login  -u 用户名 -p 密码

例えば:

docker login --username=cheergoivan registry.cn-hangzhou.aliyuncs.com

考えられるエラーの問題

[root @ K8S-Master〜] #Docker the Login 192.168.59.128
ユーザー名:ADMIN   
パスワード:
応答からのエラーデーモン:Get https://192.168.59.128/v2/:Dial tcp 192.168.59.128:443:Connect:接続が拒否さ
れましたここで述べましたhttpを使用してハーバーをデプロイしたため、接続が拒否されました。アクセス用にhttps://があり、すべてのエラーが報告されます

次に、この問題の解決策は実際には/etc/docker/daemon.jsonファイルの下にあります

プライベートウェアハウスに認証を追加してログインできます

[root @ k8s-master〜] #vim /etc/docker/daemon.json

{         "registry-mirrors":["http://f1361db2.m.daocloud.io"]、         "insecure-registries":["192.168.59.128"] }


重启docker
[root @ k8s-master〜] #systemctl restart docker

ログインすると、ログインしたことが
わかります。問題は解決しました[root @ k8s-master〜] #docker login 192.168.59.128
ユーザー名:admin
パスワード:
警告!パスワードは暗号化されずに/root/.docker/に保存されます。 config.json。
この警告を削除するように資格情報ヘルパーを構成します
。https://docs.docker.com/engine/reference/commandline/login/#credentials-store

ログインが成功しましたを参照してください

http://192.168.59.128/にアクセスして、Harbourログインます。

 

1.タグ付け

 docker tag dkcentos:latest 192.168.59.128/dukang/dukcentos:latest

2.プッシュ

docker push 192.168.59.128/dukang/dukcentos


プライベートサーバーハーバーに移動して、アップロードされた画像に問題がないかどうかを確認します 

ここで見ることができることに注意してください:プッシュフォーマット

3.ローカルミラーを削除します(ローカルの役に立たないミラーは削除できます)

(画像に対応するコンテナが停止していることを確認してください)

docker rmi........。

ミラーの複数のリポジトリを削除できません

理由:削除されたImageIDには、複数のREPOSITORY名参照があります。ミラー名で削除します。

参考記事 https://blog.csdn.net/JackLiu16/article/details/80581709

4.画像をプルします

docker pull 192.168.59.128/dukang/dukcentos:latest

 

総括する:

ミラーの作成

docker build コマンドは、Dockerfileを使用してイメージを作成するために使用されます。

現在のディレクトリにあるDockerfileを使用して、runoob / ubuntu:v1というラベルの付いたイメージを作成します。

docker build -t runoob/ubuntu:v1 . 

docker commit:コンテナから新しいイメージを作成します。

将容器a404c6c174a2 保存为新的镜像mymysql:v1 ,并添加提交人信息和说明信息。
docker commit -a "runoob.com" -m "my apache" a404c6c174a2  mymysql:v1 
  • -a:提出されたミラー作成者。

  • -c: Dockerfile命令を使用してミラーを作成します。

  • -m:送信時の説明テキスト。

  • -p:コミットするとき、コンテナを一時停止します。

港関連

1.ログイン

docker login http://xxxxx.com

2.プライベートハブにログインしてプロジェクトを作成します

   たとえば、プロジェクトの名前はabc-devです。

2.ミラーにタグを付けます

  docker tag 2e25d8496557 xxxxx.com/abc-dev/arc:1334

  2e25d8496557:画像ID、Docker画像で表示できます

  xxxxx.com:プライベートハブドメイン名

  abc-dev:プロジェクト名

  アーク:ミラー名

  1334:ミラーバージョン番号

4.プッシュ

  docker push xxxxx.com/abc-dev/arc:1334  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

おすすめ

転載: blog.csdn.net/Coder_Boy_/article/details/110312431