Docker入门

一.安装

请查看官方文档https://docs.docker.com/docker-for-windows/install/,win10和mac都可以安装,所以大家可以本机装一个玩玩。

二.镜像&容器

镜像可以理解成war包,容器可以理解成tomcat,镜像可以更新不同的版本,容器可以启停,查看日志,配置参数。

镜像

查找镜像

docker  search <镜像名称>

eg.

docker search tomcat

OFFICIAL表示是否是官方镜像,每个镜像会有多个版本(官方交Tags),具体每个版本的描述可以去DockerHub上查看。

下载镜像。如果没有版本号默认下载最新版本。

docker pull <镜像名称>:<版本号>

查看镜像列表

docker images

删除镜像

docker rmi <IMAGE ID>

eg.

docker rmi  5e35e350aded

docker  commit基本用不到。

容器

查看正在运行的容器

docker ps

查看所有容器

docker  ps  -a

DockerHub上每个镜像的描述里都有详细的容器启动说明,使用镜像前最好阅读下。

启动容器

docker run <镜像名称>:<版本号>

常用的参数:

常用的参数
参数说明
-d后台启动,无日志输出
--rm容器停止后自动删除容器。
-p  <宿主机端口号>:<容器端口号>映射容器端口到宿主机。注意是小写 p,docker 网络模式默认是 bridge,如果不映射端口,就只能用容器的 ip 去访问了,实际使用中是不可能这样访问的。所以端口一定要映射。
--name <自定义容器名称>不指定的话,docker 会自动生成一个名字。这个最好指定下,自定义容器名称可以用来方便地操作容器。
-v <宿主机文件路径>:<容器文件路径>把容器里的目录挂载到宿主机。默认可读写。

 

 

 

 

 

 

 

 

 

 

 

启动一个空的tomcat容器

docker run -d --name tomcat8 -p 8082:8080 -v ~/tomcat/webapps:/usr/local/tomcat/webapps tomcat:8.5.49-jdk8

这里我把本地的 ~/tomcat/webapps 目录挂载到容器的 tomcat 目录,容器启动的时候就会包含 ~/tomcat/webapps 里的项目。

docker run 相当于把war包放入tomcat启动,我们可以用同一个镜像启动多个不同的容器。

查看容器ip

docker exec -it <容器名称> IP   a


docker  exec -it tomcat8 ip a

查看容器日志

docker logs  -f <容器名称>


docker  logs -f tomcat8

进入容器内部

docker exec  -it <容器名称> bash


docker exec  -it tomcat8 bash

停止容器

docker stop  <容器名称>

启动一个停止的容器

docker  start <容器名称>

删除容器

docker rm <容器名称>

删除容器前   需要先停止容器

3.dockerfile

用-v  挂载本地目录的方式启动tomcat,可以达到部署项目的目的。我们使用Dockerfile可以直接把项目变成镜像,也可以达到部署项目的目的。

 

参数说明
FROM使用的基础镜像
MAINTAINER作者
RUN构建新镜像时执行的命令。
COPY拷贝文件到新镜像中。
EXPOSE提示新镜像可以映射的端口号。这个实际上是没有意义的,最终哪些端口映射到宿主机还是要 -p 指定。

dockfie文件一般放在开发工程的根目录下。

在dockfile所在路径下执行命令,生成镜像

 

docker  build -t <镜像名称>:<版本号>

dockerfile构建的时候是会使用缓存的,只有当dockfile有修改的情况下才会不使用缓存,如果要强制dockerfile不使用缓存构建,可以使用--no-cache参数

docker build --no-cache -t <镜像名称>:<版本号>

有时候开发工程中会有两套 Dockerfile 配置,可以 -f 命令指定构建时使用的 Dockerfile 文件。在现在主流的 IDE(IDEA、VSCode)中使用<字符串>.Dockerfile(例如:slim.Dockerfile) 命名的 Dockerfile 文件会被识别。

docker build -t <镜像名称>:<版本号> -f <Dockerfile 文件名> .

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值