1. 程式人生 > >docker--從倉庫下載映象到推送自己的專案到倉庫步驟詳解

docker--從倉庫下載映象到推送自己的專案到倉庫步驟詳解

       怎樣從倉庫下載的映象,變成容器,並在容器中製作專案,再將容器變成映象,然後將映象推送到倉庫?

    

一:從官網下載映象

       以拉取個人公有centos7.3映象為例:

  

  拉取方式為

# docker pull 使用者/倉庫:標籤
》docker pull kennyyaohong/public:centos7.3

 二:進行專案

1.啟動容器

# -it 以互動模式啟動一個容器
#--name  命名容器
#-d  後臺執行容器,並返回容器ID
#docker run  -it  --name    定義容器名        -d 映象名:標籤      
》docker run -it  --name container_centos7.3 -d kennyyaohong/public:centos7.3 
》docker ps

CONTAINER ID           IMAGE                                        NAMES                      COMMAND     CREATED           STATUS           PORTS     
4bd480b4ac28    kennyyaohong/public:centos7.3    container_centos7.3          "/bin/bash"  4 seconds ago     Up 3 seconds 

2.進入容器

#exec :在執行的容器中執行命令
#-d :分離模式: 在後臺執行
#-i :即使沒有附加也保持STDIN 開啟
#-t :分配一個偽終端
》docker exec -ti container_centos7.3 /bin/bash [[email protected] /]#

3.進行專案

進入docker進行要開展的專案

[[email protected] /]# mkdir project
[[email protected] /]# cd project/
[[email protected] project]# ls
[
[email protected]
project]# vi test.sh [[email protected] project]# sh test.sh hello

三:將容器變成映象

#-a :提交的映象作者;

#-c :使用Dockerfile指令來建立映象;

#-m :提交時的說明文字;

#-p :在commit時,將容器暫停。

#     docker    commit    -m  “提交說明文字”    -a        “作者”                        要提交的容器名                 提交後的映象名:提交後的映象tag名         

》docker commit -m "my_project" -a "kennyyaohong" container_centos7.3  myproject_centos7.3:centos7.3
sha256:e12a9ec48ab76d4114e4d80293eb994bafb5d49e974143766d08ab9f74a2d193

#容器變為映象後的
host-172-17-17-115:~ # docker images; REPOSITORY TAG IMAGE ID CREATED SIZE myproject_centos7.3 centos7.3 e12a9ec48ab7 2 seconds ago 258MB

四:將映象推入倉庫

 1.重新定義標籤

#docker  tag  映象id       要推入倉庫的使用者名稱/要推入的倉庫名:新定義的tag 
》docker tag e12a9ec48ab7 kennyyaohong/public:myproject_centos7.3
#docker push      要推入倉庫的使用者名稱/要推入的倉庫名:映象標籤
》docker push kennyyaohong/public:myproject_centos7.3
The push refers to a repository [docker.io/kennyyaohong/public]
193b0484e158: Layer already exists 
34e7b85d83e4: Layer already exists 
myproject_centos7.3: digest: sha256:5ffa998f3fc91e965d3b2e65ceefbc30a0bce49359058fba39e9386206a84bdc size: 948