docker镜像的导入和导出

来源:互联网 发布:淘宝上的车秒贷怎么样 编辑:程序博客网 时间:2024/06/05 20:33

gitlab 的docker使用

gitlab docker

启动命令

docker run -d -p 3000:80 twang2218/gitlab-ce-zh:9.0.3docker run -d -p 8080:80 gitlab/gitlab-ce:latest

将容器修改提交到镜像

# 进入容器内部[root@#localhost docker]# docker run -ti  ubuntu:14.04 /bin/bashroot@812a997f614a:/# id uid=0(root) gid=0(root) groups=0(root)#做了一些修改root@812a997f614a:/# echo update>update.txtroot@812a997f614a:/# exitexit[root@#localhost docker]# docker ps -aCONTAINER ID        IMAGE                          COMMAND                  CREATED             STATUS                           PORTS                                   NAMES812a997f614a        ubuntu:14.04                   "/bin/bash"              7 minutes ago       Exited (0) 22 seconds ago                                                zealous_euler69304dea46c7        gitlab/gitlab-ce:latest        "/assets/wrapper"        About an hour ago   Exited (127) 44 minutes ago                                              competent_minsky67ba866e21b0        gitlab/gitlab-ce:latest        "/assets/wrapper"        2 hours ago         Exited (137) About an hour ago                                           hungry_hoover2a3d08a0a2ff        twang2218/gitlab-ce-zh:9.0.3   "/assets/wrapper"        2 hours ago         Exited (137) About an hour ago                                           nervous_wozniak6db49540be99        twang2218/gitlab-ce-zh:9.0.3   "/assets/wrapper"        2 hours ago         Exited (255) 2 hours ago         22/tcp, 443/tcp, 0.0.0.0:3000->80/tcp   romantic_elionb08a6d6ed716        gitlab/gitlab-ce:latest        "/assets/wrapper"        2 hours ago         Exited (255) 2 hours ago         22/tcp, 443/tcp, 0.0.0.0:8080->80/tcp   competent_brahmagupta33fd0b1ebd27        gitlab/gitlab-ce:latest        "/assets/wrapper"        2 hours ago         Exited (127) 2 hours ago                                                 loving_brattain6f53620a930c        twang2218/gitlab-ce-zh:9.0.3   "/assets/wrapper"        3 hours ago         Exited (127) 2 hours ago                                                 brave_galileo88df78f77c4e        ubuntu:14.04                   "sleep 360"              4 days ago          Exited (137) 4 days ago                                                  testcopy81a879a36bd3        wordpress                      "docker-entrypoint..."   4 days ago          Exited (0) 4 days ago                                                    wordpressa57a3cc492b7        mysql                          "docker-entrypoint..."   4 days ago          Exited (0) 4 days ago                                                    mysqlwp# 将修改多的镜像保存成一个新的[root@#localhost docker]# docker commit 812a997f614a ubuntu:updatesha256:317f102584605694da424bc96764559a1ccfda13943353f4cbdfd89c96515e6b[root@#localhost docker]# docker imagesREPOSITORY                  TAG                 IMAGE ID            CREATED             SIZEubuntu                      update              317f10258460        5 seconds ago       188 MBtwang2218/gitlab-ce-zh      9.0.3               36172b5fefab        44 hours ago        1.19 GBgitlab/gitlab-ce            latest              5eff2e44957c        2 days ago          1.11 GBmysql                       latest              9546ca122d3a        8 days ago          407 MBwordpress                   latest              4ad41adc2794        2 weeks ago         401 MBubuntu                      14.04               7c09e61e9035        5 weeks ago         188 MBdaocloud.io/library/nginx   1.7.1               e3e043d3ed2f        2 years ago         499 MB# 查看修改多的镜像和原来镜像之间的差异[root@#localhost docker]# docker diff 812a997f614aC /varC /var/cacheC /var/cache/aptD /var/cache/apt/srcpkgcache.binD /var/cache/apt/pkgcache.binC /var/libC /var/lib/aptC /var/lib/apt/listsA /var/lib/apt/lists/lockA /var/lib/apt/lists/partialA /var/lib/apt/lists/partial/archive.ubuntu.com_ubuntu_dists_trusty-updates_InReleaseA /update.txtC /rootA /root/.bash_history[root@#localhost docker]# 

镜像的导入和导出

export 和improt

[root@#localhost docker]# docker run -ti  ubuntu:update /bin/bashroot@cbe3cb7799ed:/# lsbin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  update.txt  usr  var[root@#localhost docker]# [root@#localhost docker]# docker ps -aCONTAINER ID        IMAGE                          COMMAND                  CREATED             STATUS                        PORTS                                   NAMEScbe3cb7799ed        ubuntu:update                  "/bin/bash"              47 seconds ago      Exited (1) 6 seconds ago                                              adoring_kare812a997f614a        ubuntu:14.04                   "/bin/bash"              16 minutes ago      Exited (0) 8 minutes ago                                              zealous_euler69304dea46c7        gitlab/gitlab-ce:latest        "/assets/wrapper"        2 hours ago         Exited (127) 53 minutes ago                                           competent_minsky67ba866e21b0        gitlab/gitlab-ce:latest        "/assets/wrapper"        2 hours ago         Exited (137) 2 hours ago                                              hungry_hoover2a3d08a0a2ff        twang2218/gitlab-ce-zh:9.0.3   "/assets/wrapper"        2 hours ago         Exited (137) 2 hours ago                                              nervous_wozniak6db49540be99        twang2218/gitlab-ce-zh:9.0.3   "/assets/wrapper"        2 hours ago         Exited (255) 2 hours ago      22/tcp, 443/tcp, 0.0.0.0:3000->80/tcp   romantic_elionb08a6d6ed716        gitlab/gitlab-ce:latest        "/assets/wrapper"        2 hours ago         Exited (255) 2 hours ago      22/tcp, 443/tcp, 0.0.0.0:8080->80/tcp   competent_brahmagupta33fd0b1ebd27        gitlab/gitlab-ce:latest        "/assets/wrapper"        3 hours ago         Exited (127) 2 hours ago                                              loving_brattain6f53620a930c        twang2218/gitlab-ce-zh:9.0.3   "/assets/wrapper"        3 hours ago         Exited (127) 2 hours ago                                              brave_galileo88df78f77c4e        ubuntu:14.04                   "sleep 360"              4 days ago          Exited (137) 4 days ago                                               testcopy81a879a36bd3        wordpress                      "docker-entrypoint..."   4 days ago          Exited (0) 4 days ago                                                 wordpressa57a3cc492b7        mysql                          "docker-entrypoint..."   4 days ago          Exited (0) 4 days ago                                                 mysqlwp# 将镜像导出到文件[root@#localhost docker]# docker export cbe3cb7799ed > update.tar# 创建一个新静像从基于导出的文件[root@#localhost /]# docker import - update < update.tar sha256:fd00d520a43eb5dc6cca8717fe0ca04cfdc53b02cad2fb5b50d877b8e6d6c3bc[root@#localhost /]# docker imagesREPOSITORY                  TAG                 IMAGE ID            CREATED             SIZEupdate                      latest              fd00d520a43e        13 seconds ago      165 MBubuntu                      update              317f10258460        11 minutes ago      188 MBtwang2218/gitlab-ce-zh      9.0.3               36172b5fefab        44 hours ago        1.19 GBgitlab/gitlab-ce            latest              5eff2e44957c        2 days ago          1.11 GBmysql                       latest              9546ca122d3a        8 days ago          407 MBwordpress                   latest              4ad41adc2794        2 weeks ago         401 MBubuntu                      14.04               7c09e61e9035        5 weeks ago         188 MBdaocloud.io/library/nginx   1.7.1               e3e043d3ed2f        2 years ago         499 MB[root@#localhost /]# 

save 和load

(像当与镜像的备份和恢复)

# update是一个已经存在的镜像[root@#localhost /]# docker save -o update1.tar update[root@#localhost /]# lsbin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  update1.tar  update.tar  usr  var[root@#localhost /]# du -sh update1.tar 166M    update1.tar# 删除update镜像[root@#localhost /]# docker rmi updateUntagged: update:latestDeleted: sha256:fd00d520a43eb5dc6cca8717fe0ca04cfdc53b02cad2fb5b50d877b8e6d6c3bcDeleted: sha256:14cc8cd7b783152682835346e5fe90860a9feeb684866688692285319d4e97ad[root@#localhost /]# docker imagesREPOSITORY                  TAG                 IMAGE ID            CREATED             SIZEubuntu                      update              317f10258460        16 minutes ago      188 MBtwang2218/gitlab-ce-zh      9.0.3               36172b5fefab        44 hours ago        1.19 GBgitlab/gitlab-ce            latest              5eff2e44957c        2 days ago          1.11 GBmysql                       latest              9546ca122d3a        8 days ago          407 MBwordpress                   latest              4ad41adc2794        2 weeks ago         401 MBubuntu                      14.04               7c09e61e9035        5 weeks ago         188 MBdaocloud.io/library/nginx   1.7.1               e3e043d3ed2f        2 years ago         499 MB#导入镜像[root@#localhost /]# docker load < update1.tar 14cc8cd7b783: Loading layer [==================================================>] 173.8 MB/173.8 MBLoaded image: update:latest[root@#localhost /]# docker imagesREPOSITORY                  TAG                 IMAGE ID            CREATED             SIZEupdate                      latest              fd00d520a43e        6 minutes ago       165 MBubuntu                      update              317f10258460        17 minutes ago      188 MBtwang2218/gitlab-ce-zh      9.0.3               36172b5fefab        44 hours ago        1.19 GBgitlab/gitlab-ce            latest              5eff2e44957c        2 days ago          1.11 GBmysql                       latest              9546ca122d3a        8 days ago          407 MBwordpress                   latest              4ad41adc2794        2 weeks ago         401 MBubuntu                      14.04               7c09e61e9035        5 weeks ago         188 MBdaocloud.io/library/nginx   1.7.1               e3e043d3ed2f        2 years ago         499 MB[root@#localhost /]# 

Dockerfile

[root@#localhost ~]# mkdir docker_file[root@#localhost ~]# cd docker_file/[root@#localhost docker_file]# vi Dockerfile [root@#localhost docker_file]# cat Dockerfile FROM ubuntu:14.04ENTRYPOINT ["/bin/echo"][root@#localhost docker_file]# docker build .Sending build context to Docker daemon 2.048 kBStep 1/2 : FROM ubuntu:14.04 ---> 7c09e61e9035Step 2/2 : ENTRYPOINT /bin/echo ---> Running in d53f31b93355 ---> 26dd06d2e5a5Removing intermediate container d53f31b93355Successfully built 26dd06d2e5a5#运行镜像[root@#localhost docker_file]# docker run 26dd06d2e5a5#加入一个参数[root@#localhost docker_file]# docker run 26dd06d2e5a5 hello worldhello world[root@#localhost docker_file]# vi Dockerfile [root@#localhost docker_file]# docker run 26dd06d2e5a5 hello worldhello world#[root@#localhost docker_file]# cat Dockerfile FROM ubuntu:14.04#ENTRYPOINT ["/bin/echo","Hi world!"]CMD ["/bin/echo","Hi world!"][root@#localhost docker_file]# docker build .[root@#localhost docker_file]# docker run 12458a717cedHi world![root@#localhost docker_file]# docker run 12458a717ced /bin/date Sat Apr  8 12:08:14 UTC 2017

构建的时候打个标签

[root@#localhost docker_file]# docker build -t yang:01 .Sending build context to Docker daemon 3.584 kBStep 1/2 : FROM ubuntu:14.04 ---> 7c09e61e9035Step 2/2 : CMD /bin/echo Hi world! ---> Running in 94e510f085d7 ---> 6b33c8a6a32fRemoving intermediate container 94e510f085d7Successfully built 6b33c8a6a32f[root@#localhost docker_file]# docker imagesREPOSITORY                  TAG                 IMAGE ID            CREATED             SIZEyang                        01                  6b33c8a6a32f        5 seconds ago       188 MBupdate                      latest              fd00d520a43e        29 minutes ago      165 MBubuntu                      update              317f10258460        41 minutes ago      188 MBtwang2218/gitlab-ce-zh      9.0.3               36172b5fefab        44 hours ago        1.19 GBgitlab/gitlab-ce            latest              5eff2e44957c        2 days ago          1.11 GBmysql                       latest              9546ca122d3a        8 days ago          407 MBwordpress                   latest              4ad41adc2794        2 weeks ago         401 MBubuntu                      14.04               7c09e61e9035        5 weeks ago         188 MBdaocloud.io/library/nginx   1.7.1               e3e043d3ed2f        2 years ago         499 MB[root@#localhost docker_file]# 

构建实例

将flask应用 打包的镜像中

编写python程序 hellp.py

#!/usr/bin/env pythonfrom flask import Flaskapp = Flask(__name__)@app.route('/hi')def hello_world():    return 'Hello World!'if __name__ == '__main__':    app.run(host='0.0.0.0', port=5000)

编写Dockerfile

FROM ubuntu:14.04RUN apt-get updateRUN apt-get install -y pythonRUN apt-get install -y python-pipRUN apt-get clean allRUN pip install flaskADD hello.py /tmp/hello.pyEXPOSE 5000CMD ["python","/tmp/hello.py"]
原创粉丝点击