docker学习笔记-03

docker学习笔记  ---每特教育

docker命令

1.docker images 镜像缓存

docker images 镜像缓存

 REPOSITORY     存储库名称
Tag     镜像的标签  不写版本号码 默认下载最新latest镜像
IMAGE ID      镜像id
CREATED     创建时间
SIZE       大小

docker images 查看本地镜像文件
docker rmi -f kibana:5.6.9 ---删除镜像文件


docker images -a
docker images -q ---只显示镜像的id
docker images --digests ---显示镜像的摘要信息
docker images --no-trunc ---显示完整镜像信息

docker rmi tomcat(镜像文件名称) 

 

2.docker search

docker search mysql

https://hub.docker.com/

docker search -s 30 mysql 列出点赞数超过30以上。

latest 表示为最新的镜像文件 mysql8.0版本

3.docker pull

latest -----tag 最新版本的镜像文件

docker pull nginx:latest --默认的情况下 下载最新版本的镜像 可以通过

https://hub.docker.com/_/nginx?tab=tags&page=1&ordering=last_updated

下载:

tomcat安装包大小在50-80M之间

为什么size大小差别太大?

Tomcat运行时,依赖于,服务器,jdk,加起来比较大了

4.docker run

docker run

-i(保持容器一直运行)

-t(给容器一个伪终端)-d(后台运行,不直接进入容器) --name=tomcat9.2(给启动容器起名字)-p 8080:8080(宿主:docker容器)tomcat:9.2(启动的容器) 【参数】(加入容器初始化命令)

#通过 -it 启动的容器有两个特点 一创建就进入容器 exit退出容器 容器就会停止运行 ---交互式容器

#通过 -id 创建的容器 docker exec -it tomcat9.2(--name起的名称)进入容器 exit退出容器 容器不会停止运行 ---守护式容器

docker ps               查看正在运行的容器

docker ps -a            查看运行和已经运行关闭大的容器

docker stop tomcat8          关闭容器

docker start tomcat8          启动容器

docker rm tomcat8          删除容器

docker inspect tomcat8       查看容器信息

docker exec 参数        进入容器z

运行原理:

docker run mayikt

简单描述:首先会先从本地获取获取mayikt镜像文件,如果本地没有该镜像文件则会去

阿里云仓库查找该镜像文件,如果阿里云仓库也没有该镜像文件,则会报错找不到镜像文件。

获取到镜像文件之后直接运行。

详细描述:

1.docker在本机缓存中 mayikt镜像文件,如果本地存在该镜像文件,则以该镜像文件作为模板在容器中运行。

2.如果本地缓存中,没有mayikt镜像文件 则会从dockerhub 或者加速镜像中查找,如果查找不到的话,则返回错误找不到该镜像。

3.如果能够查找到该镜像,则以该镜像作为模板运行。

删除掉所有的镜像文件,然后执行

可以看到,端口号是8080

重新打开一个窗口

之后可以进入到容器中

如下代码:从第五行开始:

这样就进入了容器中

ls 命令 可以看到里面的内容

容器也可以看到ip 信息

进入到 容器中,外部是访问不了的

重新打开一个窗口。访问

但如果进入在容器中,确是可以的

外部与容器内部压根就不在一个网段,不做映射不会访问成功

每个容器都有自己独立的网络 ip信息 运行成功 就是一个轻量级linux操作系统

启动容器:docker start 容器id
停止容器:docker stop  容器id
删除容器:docker rm  容器id

进入容器中:
# 首先使用下面的命令,查看容器ID(CONTAINER ID):
docker ps -a
# 然后用下面的命令进入容器,就可以使用bash命令浏览容器里的文件:
docker exec -it [CONTAINER ID] bash
# 有的镜像没有bash命令,可以用对应的shell,比如sh
docker exec -it [CONTAINER ID] sh

查看容器信息:

Docker ps 获取到容器id

docker inspect 1e07cc5cc78d(当前正在运行的id)

网关为:172.17.0.1

ip为:172.17.0.2

5.docker commit

主要作用:根据当前容器制作为镜像文件

流程:

1. 从docker hub中下载一个tomcat8镜像文件;

2. 运行tomcat8镜像文件 在tomcatwebapps 目录中新增 mayikt文件夹 index.html

3. 将当前容器内容根据模板制作为镜像文件

docker commit提交容器副本使之成为一个新的镜像
命令:docker commit -m=“提交的描述信息” -a=“作者” 容器ID 要创建的目标镜像名:[标签名]


1. 安装一个tomcat8
docker run -p 8081:8080   tomcat:8
2. docker exec -it 3a06b4c779a8   bash
3. cd webapps 
4. mkdir mayikt 
5. touch index.html
6. echo "mayikt" >>index.html


docker commit -m=“提交的描述信息” -a=“作者” 容器ID 要创建的目标镜像名:[标签名]

1.根据当前容器作为模板制作为镜像文件
docker commit -m="mayikt tomcat" -a="mayikt"  3a06b4c779a8 mayikt-tomcat:1.0
2.在以当前自己制作的镜像文件运行
docker run -p 8088:8080   mayikt-tomcat:1.0

docker stop $(docker ps -q) & docker rm $(docker ps -aq) ---删除所有的容器

没删除干净的,再继续执行

docker stop $(docker ps -q) & docker rm $(docker ps -aq) ---删除所有的容器

相关推荐

  1. Kubernetes学习笔记-Part.02 Docker版本

    2024-07-16 14:56:02       54 阅读
  2. Python学习笔记03

    2024-07-16 14:56:02       32 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-16 14:56:02       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-16 14:56:02       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-16 14:56:02       58 阅读
  4. Python语言-面向对象

    2024-07-16 14:56:02       69 阅读

热门阅读

  1. 若依分离版 后端自定义分页

    2024-07-16 14:56:02       22 阅读
  2. Elasticsearch索引映射定义

    2024-07-16 14:56:02       19 阅读
  3. 树莓派使用蓝牙设置wifi网络

    2024-07-16 14:56:02       18 阅读
  4. Spring Boot项目中,对接口请求参数打印日志

    2024-07-16 14:56:02       23 阅读
  5. 第二十一条:为传诸后世而设计接口

    2024-07-16 14:56:02       20 阅读
  6. 墨烯的C语言技术栈-C语言基础-015

    2024-07-16 14:56:02       19 阅读
  7. JWT令牌认证介绍及安全风险

    2024-07-16 14:56:02       21 阅读
  8. 导航专业入门,高考/考研假期预习指南

    2024-07-16 14:56:02       21 阅读