ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Docker8_3:Docker容器数据卷:DockerFile文件挂载(一般都用这个)

2022-01-09 09:30:13  阅读:154  来源: 互联网

标签:ago centos root Docker8 镜像 挂载 Docker DockerFile docker


Docker8_3:Docker容器数据卷:DockerFile文件挂载【一般都用这个】

什么是DockerFile

DockerFile就是用来构建dokcer镜像的构建文件,是命令脚本,通过这个脚本可以生成镜像,镜像是一层层的,脚本类似,是一个个命令组合的,每个命令是一层。

构建镜像的两种方式
1.搞一个容器改完之后,commit
2.使用DockerFile构建

DockerFile构建镜像(很常用)

为什么经常用DockerFile文件中挂载?

这是自动挂载,启动就会挂载,否则需要你启动镜像的时候,通过命令参数,-v手动挂载。

编写dockerfile文件

# 创建一个dockerfile文件,文件名建议使用dockerfile,这样命令可以不写,默认就是dockerfile
# 文件中的内容 指令(大写)
FROM centos

VOLUME ["volume1","volume2"]

CMD echo "-------end-------"

CMD /bin/bash

# docker镜像是分层的,每个命令就是一层
# VOLUME ["volume1","volume2"],这里测试用的是匿名挂载,等会找对应本机卷目录是字符串,一般都用具名挂载

docker build构建镜像

# docker build -f dockerfile文件路径(相对绝对都可以) -t haokai/centos:1.0 .
# -t 表示target,生成的镜像名:TAG
# 注意:后面的.别忽略
docker build -f dockerfile1 -t haokai/centos:1.0 .

输出:

[root@localhost volume]# cat dockerfile1
FROM centos

VOLUME ["volume1","volume2"]

CMD echo "-------end-------"

CMD /bin/bash
[root@localhost volume]# docker build -f dockerfile1 -t haokai/centos:1.0 .
Sending build context to Docker daemon  2.048kB
Step 1/4 : FROM centos
latest: Pulling from library/centos
a1d0c7532777: Pull complete
Digest: sha256:a27fd8080b517143cbbbab9dfb7c8571c40d67d534bbdee55bd6c473f432b177
Status: Downloaded newer image for centos:latest
 ---> 5d0da3dc9764
Step 2/4 : VOLUME ["volume1","volume2"]
 ---> Running in ee2bb7923a30
Removing intermediate container ee2bb7923a30
 ---> b63619ea74aa
Step 3/4 : CMD echo "-------end-------"
 ---> Running in f8b93d0ba281
Removing intermediate container f8b93d0ba281
 ---> 5dc5d67f480f
Step 4/4 : CMD /bin/bash
 ---> Running in 4fc8003865da
Removing intermediate container 4fc8003865da
 ---> 347c4f0aabd2
Successfully built 347c4f0aabd2
Successfully tagged haokai/centos:1.0
[root@localhost volume]# docker images
REPOSITORY            TAG       IMAGE ID       CREATED         SIZE
haokai/centos         1.0       347c4f0aabd2   8 minutes ago   231MB
mysql                 5.7       c20987f18b13   2 weeks ago     448MB
tomcat                9.0       76206e3ba4b1   7 weeks ago     680MB
nginx                 latest    ea335eea17ab   7 weeks ago     141MB
centos                latest    5d0da3dc9764   3 months ago    231MB
portainer/portainer   latest    580c0e4e98b0   9 months ago    79.1MB
elasticsearch         7.7.0     7ec4f35ab452   20 months ago   757MB
elasticsearch         7.6.2     f29a1ee41030   21 months ago   791MB
[root@localhost volume]# docker run -it 347c4f0aabd2
[root@8bb084df8cb4 /]# ls
bin  dev  etc  home  lib  lib64  lost+found  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var  volume1  volume2
[root@8bb084df8cb4 /]#

查看挂载目录

在这里插入图片描述

# 查看容器挂载情况
docker inspect 容器id
 "Mounts": [
            {
                "Type": "volume",
                "Name": "b9de58c7d586c587509df78fbf7029dda0ff450cbd12af640d4037f9a264a352",
                "Source": "/var/lib/docker/volumes/b9de58c7d586c587509df78fbf7029dda0ff450cbd12af640d4037f9a264a352/_data",
                "Destination": "volume1",
                "Driver": "local",
                "Mode": "",
                "RW": true,
                "Propagation": ""
            },
            {
                "Type": "volume",
                "Name": "75a18f597decfb6f2207899e0354acd176bf0df7dd42b40f02137d83ed9580cf",
                "Source": "/var/lib/docker/volumes/75a18f597decfb6f2207899e0354acd176bf0df7dd42b40f02137d83ed9580cf/_data",
                "Destination": "volume2",
                "Driver": "local",
                "Mode": "",
                "RW": true,
                "Propagation": ""
            }
        ],

标签:ago,centos,root,Docker8,镜像,挂载,Docker,DockerFile,docker
来源: https://blog.csdn.net/qq_41929714/article/details/122363845

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有