Dockerfile创建镜像

本文介绍了如何利用Dockerfile来创建一个微服务的镜像。首先,从openjdk的基础镜像开始,设置环境变量,并指定jar文件的位置。接着,暴露10086端口,设置启动命令为运行java应用。通过docker build命令构建镜像,并使用docker run启动容器,对外提供服务。最后,可以通过docker ps和docker logs检查容器状态和日志。
摘要由CSDN通过智能技术生成

Dockerfile创建镜像


Dockerfile就是用来构建docker镜像的源码,是一些命令的组合,编写dockerfile可以定制化docker image。

镜像构建:首先有一个非常基础的镜像,在此基础镜像上叠加我们需要的软件,每安装一个软件,就在现有镜像的基础上叠加一层。

Dockerfile常见的命令

FROM image_name:tag 一般需要一个非常基础的镜像来做构建
RUN command:编译镜像时运行的脚本,可以写多条
ENV key value:设置环境变量,可以设置多个
CMD:设置容器的启动命令
ENTRYPOINT:设置容器的入口程序
ADD source_dir/file des_dir/file:将宿主机的文件复制到容器内,如果是一个压缩文件,将会在复制后自动解压
COPY source_dir/file des_dir/file:与ADD相似,但是不会自动解压
WORKDIR path_dir:设置工作目录
ARG:设置编译镜像时加入的参数
VOLUMN:设置容器的挂载卷
EXPOSE 端口号:向外开放一个端口号

使用Dockerfile制作微服务镜像:
利用Dockerfile制作一个微服务的镜像
1.上传微服务的jar包到linux

2.编写Dockerfile
FROM openjdk:8-jdk-alpine ( 基础镜像,jdk基础镜像
ARG JAR_FILE ( 用于下面拷贝文件
COPY ${JAR_FILE} app.jar ( 拷贝宿主机文件为app.jar
EXPOSE 10086 ( 对外发布端口10086
ENTRYPOINT [“java”,"-jar","/app.jar"] 启动命令

3.构建镜像
docker build --build-arg JAR_FILE=tensquare_eureka_server-1.0-SNAPSHOT.jar -t eureka:v1 .

4.查看镜像是否创建成功
docker images

5.创建容器
docker run -i --name=eureka -p 10086:10086 eureka:v1
查看:
docker ps
docker logs -f container_id (查看容器日志

6.访问容器
通过网页访问

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值