使用dockerfile构建镜像

一、传统部署

以java为例,传统部署方案是把程序打包成jar包上传到服务器,然后使用java -jar 运行,不可避免的是服务器要安装jdk,如果有其他python、或者c++程序,那么还需要装一堆的基础环境,这是比较麻烦的,所以产生了容器化部署,比较流行的就是docker,不管是什么程序,我都打包成docker镜像,统一使用docker命令执行,方便部署,维护。下面看看,如何将一个程序打包成docker镜像,还是以java为例。

二、dockerfile打包java程序

1.本机写一个java小程序

@RestController
public class DockerFileController {

    @GetMapping("/dockerFile")
    public String dockerFile() {
        return "this is a docker file test";
    }
}

使用浏览器访问
在这里插入图片描述

2.编写Dockerfile文件

#构造的新镜像是基于哪个镜像
FROM openjdk:8-jdk-slim
#容器维护者
MAINTAINER dly
#递归创建文件夹
RUN mkdir -p /demo/jar
#复制jar包到指定文件夹
COPY target/demo-0.0.1-SNAPSHOT.jar /demo/jar
#workdir设置Dockerfile中指定的工作目录
WORKDIR "/demo"
RUN ls
#运行容器时执行的命令
CMD java -jar jar/demo-0.0.1-SNAPSHOT.jar

3.将jar包和Dockerfile上传到服务器

在这里插入图片描述

4.构建镜像

docker build -t java-demo:v1.0 .
# -t : 版本
eg: 最后的 . 不能省,表示在当前目录下执行

在这里插入图片描述
可以看到是构建成功的

5. 启动容器

docker run -d -p 8080:8080 java-demo:v1.0

启动成功
在这里插入图片描述

最后,使用公网ip加端口访问也是可以成功的,简单的demo演示结束。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值