docker基本用法和dockerfile 构建镜像

docker run --name try1 -d -p 80:80 nginx     

启动nginx 的容器,并命名为try1      -p  主机端口:容器端口

docker exec     

docker exec -it 8f01eb805359 /bin/bash   指定容器8f01eb805359(容器ID),进入交互系统

docker ps [option] 列出容器 -a 显示多有容器包括未运行的

docker commit 创建镜像 缺点 黑箱操作,除了当事人,其他人不知道操作的命令,不利于维护

dockerfile   

        基本操作 mkdir /temp

                        cd temp 

                        touch Dockerfile

        Dockerfile的基本写法、

                      FROM nginx

      USER root 
                      RUN echo '<h1>Hello, Docker!</h1>' > /usr/share/nginx/html/index.htm

        Dockerfile的特殊镜像

                       from scratch 这个镜像是虚拟的概念,空白镜像,这句话的意思是,你不以任                                何镜像作为基础,接下来所写的镜像就是第一层

        以上边为例,docker build -t nginx:v3 .

docker buildx build --no-cache --platform linux/amd64,linux/arm64 -t harbor.com/paas/test:v2345  . --push    (双架构镜像)

        在这里我们指定了最终镜像的名称 -t nginx:v3

$ docker build -t nginx:v3 .
Sending build context to Docker daemon 2.048 kB
Step 1 : FROM nginx
 ---> e43d811ce2f4
Step 2 : RUN echo '<h1>Hello, Docker!</h1>' > /usr/share/nginx/html/index.html
 ---> Running in 9cdc27646c7b
 ---> 44aa4490ce2c
Removing intermediate container 9cdc27646c7b
Successfully built 44aa4490ce2c

        从命令的输出结果中,我们可以清晰的看到镜像的构建过程。在 Step 2 中,如同我们之前所说的那样,RUN 指令启动了一个容器 9cdc27646c7b,执行了所要求的命令,并最后提交了这一层 44aa4490ce2c,随后删除了所用到的这个容器 9cdc27646c7b

Dockerfile指令

COPY

ADD (在 Docker 官方的 Dockerfile 最佳实践文档 中要求,尽可能的使用 COPY,因为 COPY 的语义很明确,就是复制文件而已,而 ADD 则包含了更复杂的功能,其行为也不一定很清晰。最适合使用 ADD 的场合,就是所提及的需要自动解压缩的场合。) 

直接用Git repo进行构建镜像

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值