docker-03-镜像详解




docker镜像详解

镜像是什么

镜像是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含了某个软件所需的所有内容,包括代码、依赖库和配置文件等等

所有的应用,直接打包成docker镜像,就可以跑起来


如何得到镜像

1 从远程dockerhub仓库下载
2 拷贝别人的镜像
3 自己制作一个镜像 DockerFile


docker镜像加载原理

image-20210820172817902

image-20210820172834453



分层理解

image-20210820173001766

image-20210820173015867

image-20210820173030954

image-20210820173042084

image-20210820173057752

image-20210820173110716



commit提交镜像

# [docker commit 容器ID] 提交容器成为一个新的镜像
# 命令和git原理类似
# docker commit -m="描述信息" -a="作者" 容器ID 目标镜像名:[tag]

# 提交一个镜像
# 1 启动一个默认的tomcat
[root@alnk ~]# docker run -d -p 3355:8080 --name tomcat01 tomcat


# 2 发现默认的tomcat容器中,webapps目录没有应用
[root@alnk ~]# docker exec -it tomcat01 /bin/bash
root@0d26448b910f:/usr/local/tomcat# pwd
/usr/local/tomcat
root@0d26448b910f:/usr/local/tomcat# ls
BUILDING.txt  CONTRIBUTING.md  LICENSE  NOTICE  README.md  RELEASE-NOTES  RUNNING.txt  bin  conf  lib  logs  native-jni-lib  temp  webapps  webapps.dist  work
root@0d26448b910f:/usr/local/tomcat# ls webapps


# 3 拷贝基本的应用进去
root@0d26448b910f:/usr/local/tomcat# cp -a webapps.dist/* webapps


# 4 commit提交为一个镜像
[root@alnk ~]# docker commit -a="Alnk" -m="add some file to webapps" 0d26448b910f tomecat02:1.0

[root@alnk ~]# docker images
REPOSITORY               TAG       IMAGE ID       CREATED         SIZE
tomecat02                1.0       d638be1bcd4f   5 seconds ago   673MB
tomcat                   9.0       266d1269bb29   37 hours ago    668MB




可视化

portainer(不常用)

# 什么是portainer?
# docker图形化界面管理工具,提供一个后台给我们操作
# 建议还是使用命令行操作

# 运行
[root@alnk ~]# docker run -d -p 8000:8000 -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce

# 测试
# 浏览器访问 IP:9000

image-20210820171910693


posted @ 2021-08-30 16:59  李成果  阅读(68)  评论(0编辑  收藏  举报