Docker Registry#

0. Outline#

  1. Login

  2. docker image 取得編

  3. docker image 登録編

  4. Logout

  5. 参考文献

1. Login#

以下のコマンドを実行して,パスワードを入力

※USERNAMEとパスワードは外部に漏らすことないように!秘密保持!!
user & passの表示:
USERNAME: kcctroboadmin
PASSWORD: kikai
$ docker login -u [USER_NAME] kobe-kosen-robotics.org:5000

2.1. docker image 取得編#

  1. 研究室メインページ←ここにアクセス
    ../../_images/img_01.png

  2. Docker Hub←ここにアクセス
    ../../_images/img_11.png

  3. Browse repositoriesをクリック
    初回限定: 1. Loginにあ る,USERNAMEとPASSWDを入力する必要がある.

  4. 取得したいrepositoriesをクリック
    ../../_images/img_21.png ../../_images/img_2_1.png

  5. 取得したいtagをクリック
    ../../_images/img_31.png

  6. 上部にある,docker pull コマンドをコピーする.
    ../../_images/img_41.png

  7. コピーしたコマンドを実行する

    $ docker pull kobe-kosen-robotics.org:5000/shimizu-lab/ubuntu:18.04
    

2.2. docker image 登録編#

  1. pushしたい image を用意
    今回は pullした ubuntu:18.04を使用する.

    $ docker pull ubuntu:18.04
    

    既存のコンテナを使用する場合(2.Tag付けは省略する):

    $ docker ps -a
    CONTAINER ID   IMAGE                                COMMAND       CREATED       STATUS                   PORTS   NAMES
    012345678fff   nvidia/cuda:11.1-devel-ubuntu20.04   "/bin/bash"   3 weeks ago   Exited (0) 3 weeks ago           test
    $ docker commit -a testuser test kobe-kosen-robotics.org:5000/testuser/test:v1
    $ docker images
    REPOSITORY                                  TAG      IMAGE ID       CREATED         SIZE
    kobe-kose-robotics.org:5000/testuser/test   v1       a12345678bcd   6 days ago      6.94GB
    

    [参考]docker commit コマンドのフォーマット:

    $ docker commit [オプション] [コンテナ] [リポジトリ[:タグ]]
    
    ../../_images/img_5.png
  2. Tag付けを行う(既存コンテナを使用しない場合のみ)
    pushをする前に,どこのregistryで何という名前かを示す必要があるため,tag付けをする

    $ docker tag ubuntu:18.04 kobe-kosen-robotics.org:5000/testuser/ubuntu:18.04
    

    [参考]docker tag コマンドのフォーマット:

    $ docker tag [pushするimage] [registry起動PCのIPaddress]:[公開port]/[作成者等]/[image名]:[tag(version)]
    
  3. 登録(Push)をする

    $ docker push kobe-kosen-robotics.org:5000/testuser/ubuntu:18.04
    

    既存コンテナを使用したときの例:

    $ docker push kobe-kosen-robotics.org:5000/testuser/testuser/test:v1
    

3. Logout#

以下のコマンドを実行して,ログアウトする

$ docker logout kobe-kosen-robotics.org:5000

4. 参考文献#

  1. Docker_private_registry

  2. docker commitコマンドの使い方(実例で解説)