随笔(三十)『Dockerfile 构建ubuntu镜像练习』

1、将需要用的java8传到宿主机,同级目录下创建Dockerfile

image

2、编写Dockerfile vim Dockerfile

# 基础镜像来自哪里 FROM
FROM ubuntu

# 作者信息 MAINTAINER
MAINTAINER shendian

# 定义个环境变量 ENV
ENV MYPATH /usr/local
# 进入容器后的位置 WORKDIR
WORKDIR $MYPATH

# 镜像在构建时需要运行什么 RUN
# 更新ubuntu系统中可用软件包的列表
RUN apt-get update
# 在ubuntu安装vim
RUN apt-get -y install vim 
# 在ubuntu安装网络工具包
RUN apt-get -y install net-tools
# 在容器中创建文件目录
RUN mkdir /usr/local/java

# 将宿主机的文件(与Dockerfile同一级别)复制到容器中指定位置,可自行解压tar压缩包 ADD
ADD jdk-8u381-linux-x64.tar.gz /usr/local/java

# 配置java8环境变量
ENV JAVA_HOME /usr/local/java/jdk1.8.0_381
ENV JRE_HOME $JAVA_HOME/jre
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
ENV PATH $JAVA_HOME/bin:$PATH

# 暴露的端口
EXPOSE 90

# 容器启动后执行啥 ENTRYPOINT 或 CMD
ENTRYPOINT ["/bin/bash"]

3、构建镜像

# 在Dockerfile同一级执行 docker build -t 新镜像名字:版本号 .
docker build -t myubuntu:1.0 .

image

4、启动镜像docker run -it myubuntu:1.0 (多了几个功能)

image

posted @   小昕昕  阅读(136)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示