Docker Springboot项目部署

① jar包同级目录创建Dockerfile文件

② 编辑Dockerfile

1
2
3
4
5
6
7
8
9
10
11
12
# 拉取基础镜像
FROM java:8
# 设置作者信息
MAINTAINER 10wen
# 把pet_rescue-0.0.1-SNAPSHOT.jar添加到容器里,并重命名为app.jar
# 因为pet_rescue-0.0.1-SNAPSHOT.jar和Dockerfile在同一个目录下,所以只写文件名即可
ADD pet_rescue-0.0.1-SNAPSHOT.jar app.jar
# 设置端口号,此处只开放一个端口2000
EXPOSE 2000
# 执行命令,此处运行app.jar
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-jar","app.jar"]

③ 制作镜像:编辑好Dockerfile文件保存后,在当前文件夹输入命令

1
docker build -f Dockerfile -t pet_recue_image:v1.0 .

④ 查看镜像

1
docker images

⑤ 创建容器,运行springboot项目制作的镜像

  • -i 保持容器运行,-it 创建交互式容器,-id 创建守护式容器
  • -d 表示后台运行
  • –name=容器名称
  • -p 后面有两个端口,分别是:宿主机端口:容器端口
  • pet_rescue_image:v1.0 使用的镜像和版本
1
docker run -id --name=pet_rescue_container -p 2000:2000 pet_rescue_image:v1.0

⑥ 查看容器

1
2
docker ps #查看正在运行的容器
docker ps -a #查看所有容器

其他命令

  • 进入容器

    1
    docker exec 参数 #退出容器,容器不会关闭
  • 停止容器

    1
    docker stop 容器名称
  • 启动容器

    1
    docker start 容器名称
  • 删除容器:如果容器是运行状态则删除失败,需要停止容器参能删除

    1
    docker rm 容器名称
  • 查看容器信息

    1
    docker inspect 容器名称
  • 查看所有

    1
    docker images
  • 删除镜像

    1
    2
    docker rmi 镜像id/名称号:版本号 #删除指定本地镜像
    docker rmi 'docker images -q' #删除所有本地镜像