如何通过Dockerfile创建镜像
发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,这篇文章主要讲解了"如何通过Dockerfile创建镜像",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"如何通过Dockerfile创建镜像"吧!//列
千家信息网最后更新 2025年12月01日如何通过Dockerfile创建镜像
这篇文章主要讲解了"如何通过Dockerfile创建镜像",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"如何通过Dockerfile创建镜像"吧!
//列出本地所有容器镜像
$ docker imagesREPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZEtraining/webapp latest fc77f57ad303 3 weeks ago 280.5 MBubuntu 14.04 5e019ab7bf6d 4 weeks ago 180 MBubuntu latest 5e019ab7bf6d 4 weeks ago 180 MBubuntu 12.04 74fe38d11401 4 weeks ago 209.6 MBubuntu precise 74fe38d11401 4 weeks ago 209.6 MB
//一个镜像可能有多个TAG
//通过docker run -t -i REPOSITORY:TAG /bin/bash 运行一个容器,譬如ubuntu:14.04和ubuntu:latest是运行同一个镜像
//获取一个新的容器镜像
$ docker pull centosPulling repository centosb7de3133ff98: Pulling dependent layers5cc9e91966f7: Pulling fs layer511136ea3c5a: Download completeef52fb1fe610: Download complete. . .Status: Downloaded newer image for centos
$ docker run -t -i centos /bin/bashbash-4.1#
//从Docker Hub上搜索想要的容器镜像
$ sudo docker search sinatraNAME DESCRIPTION STARS OFFICIAL AUTOMATEDtraining/sinatra Sinatra training image 0 [OK]marceldegraaf/sinatra Sinatra test app 0mattwarren/docker-sinatra-demo 0 [OK]luisbebop/docker-sinatra-hello-world 0 [OK]bmorearty/handson-sinatra handson-ruby + Sinatra for Hands on with D... 0subwiz/sinatra 0bmorearty/sinatra 0. . .
//然后可以下载相应的容器镜像
//创建自定义的容器镜像
$ docker run -t -i training/sinatra /bin/bashroot@0b2616b0e5a8:/# gem install json
//-a标识创建作者$ docker commit -m "Added json gem" -a "Kate Smith" 0b2616b0e5a8 ouruser/sinatra:v24f177bd27a9ff0f6dc2a830403925b5360bfe0b93d476f7fc3231110e7f71b1c
//查看创建的容器镜像
$ docker imagesREPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZEtraining/sinatra latest 5bc342fa0b91 10 hours ago 446.7 MBouruser/sinatra v2 3c59e02ddd1a 10 hours ago 446.7 MBouruser/sinatra latest 5db5f8471261 10 hours ago 446.7 MB
//通过Dockerfile创建镜像
$ mkdir sinatra$ cd sinatra$ touch Dockerfile
# This is a commentFROM ubuntu:14.04MAINTAINER Kate Smith RUN apt-get update && apt-get install -y ruby ruby-devRUN gem install sinatra
//利用Dockerfile和docker build命令创建一个镜像
$ docker build -t ouruser/sinatra:v2 .Sending build context to Docker daemon 2.048 kBSending build context to Docker daemon Step 0 : FROM ubuntu:14.04 ---> e54ca5efa2e9Step 1 : MAINTAINER Kate Smith---> Using cache ---> 851baf55332bStep 2 : RUN apt-get update && apt-get install -y ruby ruby-dev ---> Running in 3a2558904e9bSelecting previously unselected package libasan0:amd64.
...
Installing RDoc documentation for rack-protection-1.5.3...Installing RDoc documentation for sinatra-1.4.5... ---> 97feabe5d2edRemoving intermediate container 6b81cb6313e5Successfully built 97feabe5d2ed
//利用-t来识别新镜像属于ouruser,v2是TAG
//给ouruser/sinatra镜像设置TAG
$ docker tag 5db5f8471261 ouruser/sinatra:devel
//查看ouruser/sinatra的TAG
$ docker images ouruser/sinatraREPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZEouruser/sinatra latest 5db5f8471261 11 hours ago 446.7 MBouruser/sinatra devel 5db5f8471261 11 hours ago 446.7 MBouruser/sinatra v2 5db5f8471261 11 hours ago 446.7 MB
//将镜像PUSH到Docker Hub
$ docker push ouruser/sinatraThe push refers to a repository [ouruser/sinatra] (len: 1)Sending image listPushing repository ouruser/sinatra (3 tags). . .
//从本地删除镜像
$ docker rmi training/sinatraUntagged: training/sinatra:latestDeleted: 5bc342fa0b91cabf65246837015197eecfa24b2213ed6a51a8974ae250fedd8dDeleted: ed0fffdcdae5eb2c3a55549857a8be7fc8bc4241fb19ad714364cbfd7a56b22fDeleted: 5c58979d73ae448df5af1d8142436d81116187a7633082650549c52c3a2418f0
感谢各位的阅读,以上就是"如何通过Dockerfile创建镜像"的内容了,经过本文的学习后,相信大家对如何通过Dockerfile创建镜像这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
镜像
容器
学习
内容
运行
作者
命令
多个
就是
思路
情况
文章
更多
标识
知识
知识点
篇文章
跟着
问题
实践
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
游戏和网络安全的关系
内容发布网络技术
广州华博互联网科技有限公司
为什么数据库要加锁
数据库技术导论期末总结
34岁学网络安全工程师很难吗
技术侦查 软件开发
java项目使用什么数据库
数据库规范标准
sql数据库表记录数
计算机网络技术主要考点
林权登记存量数据整合项目的数据库建设流产
软件开发 双核 多核
网络技术服务科目
数据库数据表字段名可以重复
氨基丁酸食品原料数据库
qt数据库表数据更新
网络安全宣传周宣传板内容
JDBC技术进行数据库编程步骤
速达3000数据库结构
数据库使用索引查数据
东莞鼎信网络技术有限公司简介
数据库导出空表
网络安全漏洞在哪里
怎么修改数据库中账号密码
软件开发有30个员工
win10+磁盘管理服务器
三层架构 数据库
武汉兆易网络技术
小迪安全网络安全