docker中dockerfile如何使用
docker中dockerfile如何使用,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
将下载的JDK复制到服务端
scp /jdk路径/jdk-8u211-linux-x64.tar.gz ubuntu@服务端IP:/编写dockerfile的位置/docker-centos-vim
书写dockerfile
# 选择基础镜像 我选择Ubuntu FROM ubuntu:tag #tag为版本 # 添加维护者信息 LABEL version="1.0" #版本 LABEL description="this is an Image for Springboot application" #基本描述 LABEL maintainer="haoyuehong91@163.com" #维护者信息 # 配置JDK # 1.将宿主机上的JDK ADD容器内部 为什么用ADD不用COPY呢 因为ADD会解压 还有JDK最好跟dockerfile在同一目录 ADD jdk-8u211-linux-x64.tar.gz /soft/ # 配置环境变量 ENV JAVA_HOME /soft/jdk1.8.0_211 ENV JRE_HOME ${JAVA_HOME}/jre ENV CLASSPATH .:${JAVA_HOME}/lib:${JAR_HOME}/lib ENV PATH ${M2_HOME}/bin:$PATH # 将项目jar包COPY到容器中 用COPY因为不会解压 COPY admin-0.0.1-SNAPSHOT.jar /app/ # 暴露端口 EXPOSE 9000 # 切换工作目录 WORKDIR /app/ # 运行jar包 # ENTRYPOINT ["java","-jar","/app/admin-0.0.1-SNAPSHOT.jar"] 或shell方式 ENTRYPOINT nohub java -jar admin-0.0.1-SNAPSHOT.jar&
创建镜像
docker build -t image_name .
千万别忘记后面的 .
image_name 是镜像名称
构建容器
docker run -d --name container -p 9000:8000 image_nmae
-d 代表守护进程 如果希望交互式 将-d改为 -it
--name 后面是自定义名称
-p 端口映射 以上代表将容器内的8000端口映射到宿主机9000端口上
看完上述内容,你们掌握docker中dockerfile如何使用的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!