当前位置:   article > 正文

docker使用,Dockerfile构建示例_dockerfile文件示例

dockerfile文件示例

常用docker命令

docker images   #显示dockers目前安装的所有镜像
#每个容器可以里当做一个精简版的Linux虚拟机
docker ps   #显示在运行的容器
docker ps -a   #显示所有容器包括在运行的和停止的
docker run -d --name 容器名 -p 宿主机端口:容器端口 -v 宿主机目录:容器目录 镜像名:tag(或者镜像id)   #从一个镜像启动一个容器(或者叫从一个镜像启动一个虚拟机),并且指定容器名称,容器端口和宿主机端口映射关系,将容器某个目录持久化到宿主机某个目录
docker stop 容器id  #停止一个容器
docker start 容器id  #启动一个停止的容器
docker exec -it 容器id /bin/bash   #进入容器(或者叫进给虚拟机)
docker logs -f -t --tail 100 容器id #查看容器日志(比如容器的镜像只是把jdk和一个业务jar包打在一起,那么容器跑起来,日志其实就是jar包的日志)
docker rm 容器id #删除容器,删除前必须先停止容器
docker rmi 镜像名:tag或者镜像id   #删除镜像
docker save -o 要导出的tar文件 镜像名:tag   #导出镜像 例如:docker save -o /home/libb/guarantee_web.tar guarantee_web:1.0
docker load -i 要导入的tar文件  #导入镜像 例如:docker load -i /home/libb/guarantee_web.tar
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

docker 构建Java项目的Dockerfile示例
1、在宿主机(我用的是WSL2安装的Ubuntu)中创建docker目录 mkdir /usr/local/docker
2、将要部署的jar包 guarantee-web-5.1-SNAPSHOT.jar copy到第一步中创建的文件目录中(/usr/local/docker)
3、在/usr/local/docker目录中创建镜像构建文件dockerfile.txt,内容如下:

# 基础镜像使用java
FROM java:8
# 添加一个卷,卷独立于容器,容器删除卷也会一直存在,多个容器可以共用一个卷,用来共享数据
VOLUME /tmp
# 将jar包添加到容器中并更名为app.jar
ADD  guarantee-web-5.1-SNAPSHOT.jar app.jar
# 运行jar包
ENTRYPOINT ["java","-jar","app.jar"]
#暴露9070端口作为微服务
EXPOSE 9070
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

其中暴露的端口就是jar包用到的端口,从这一点可以看出docker容器其实是一台虚拟机,有端口。
4、进入到/usr/local/docker目录,开始构建镜像 docker build -f dockerfile.txt -t guarantee_web:1.0 .
其中 -f 后面的是Dockerfile文件名, -t 后面的是构建完成后镜像的名字和版本(tag就是版本),.这个点表示 Dockerfile 所在的当前目录。Docker 会从这个目录开始构建镜像。

5、从刚刚打包好的镜像 docker run -d --name=guarantee_web -p 9070:9070 guarantee_web:1.0启动一个容器
6、进入刚刚启动的容器 docker exec -it 17e09c82efe7 /bin/bash 17e09c82efe7是容器id
7、查看日志 docker logs -f -t --tail 100 17e09c82efe7

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/834638
推荐阅读
相关标签
  

闽ICP备14008679号