创建docker镜像的两种方式

创建docker镜像的两种方式

第一种方式(docker commit )

  1. 运行一个ubuntu的容器,如果电脑不存在ubuntu镜像,会先去Docker Hub下载

    docker run -it ubuntu  ##-it意思是运行这个容器的时候是否进入容器,如果不需要进入容器中,那么不需要添加-it。
    
  2. 容器建立完成之后,会进入到Ubuntu的Bash界面,在这个容器置中你可以安装软件以及一些程序。(打包变成镜像之后,意味着其他人可以重新下载这个镜像并且运行成为容器,那么就可以用里面的软件和程序。)

  3. 在新建的ubuntu容器中下载一个软件,然后打开另一个终端,通过docker ps展示所有容器,可以看到自己建立的ubuntu容器正在运行。然后继续在这个终端输入docker diff ubuntu的ID,这时候会看到一系列很长的列表,这个列表就是反映了对比原来的ubuntu,镜像改动了什么文件。(文件前面开头的A代表新增的文件,C代表更新了的文件,D代表移除了的文件。)

  4. 继续在这个终端输入docker commit ubuntu的ID 自己的名称 / 新镜像的名称:版本号TAG(1.0),回车之后新的镜像就生成了。通过docker image ls 查看本地的镜像列表,就可以看到自己新创建的镜像了。

  5. 进入到第一个终端,输入exit关闭Ubuntu容器。

第二种方式(通过Dockerfile建立镜像)

  1. mkdir node_app新建一个node_app文件夹,cd node_app进入文件夹,vim hello world.js加一个js文件。vim Dockerfile创建Dockerfile新文件,在Dockerfile文件里面输入以下代码:

    FROM ubuntu (以ubuntu已经创建的镜像为基础)
    
    RUN apt update && apt install nodejs -y(需要执行的语句)
    
    WORKDIR /app(定义工作的目录)
    
    COPY ..(表示把当前文件夹也就是node_app资料夹中的文件都复制到/app路径下)
    
    CMD ["node","/app/hello-world.js"] (表示容器运行起来的时候需要执行什么命令)
    
  2. 通过ls可以查看自己刚刚创建的两个文件。docker build -t 新的镜像名称 :TAG(版本号). (这个点表示Dockerfile的所在目录)。

  3. 运行完成后通过docker image ls就可以看到生成了新的镜像。

哔哩哔哩教程:https://www.bilibili.com/video/BV1v5411G7xc?from=search&seid=16720522331482720987

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值