DockerFile自定义centos镜像+虚悬镜像+Ubuntu镜像

目录

一、自定义镜像mycentosjava8,要求Centos7镜像具备vim+ifconfig+jdk8

[1、拉取centos镜像,下载javaJKD小柒博客 | 开源软件镜像站](#1、拉取centos镜像,下载javaJKD小柒博客 | 开源软件镜像站)

2、编写Dockerfile文件(首字母大写)

3、构建

4、运行

[二、虚悬镜像 ,仓库名、标签都是的镜像,俗称dangling image](#二、虚悬镜像 ,仓库名、标签都是的镜像,俗称dangling image)

1、构建一个虚悬镜像

2、只查看虚悬镜像

3、虚悬镜像已经失去存在价值,可以删除

三、自定义myubuntu镜像

1、编写,准备编写Dockerfile文件

[2、构建docker build -t 新镜像名字:TAG .](#2、构建docker build -t 新镜像名字:TAG .)

[3、运行docker run -it 新镜像名字:TAG](#3、运行docker run -it 新镜像名字:TAG)


一、自定义镜像mycentosjava8,要求Centos7镜像具备vim+ifconfig+jdk8

1、拉取centos镜像,下载javaJKD小柒博客 | 开源软件镜像站

bash 复制代码
docker  pull centos

2、编写Dockerfile文件(首字母大写)

bash 复制代码
mkdir myfile
mv jdk-8u191-linux-x64.tar.gz myfile/
cd myfile
vim Dockerfile

FROM centos:7
MAINTAINER licq<licq5427@163.com>
 
ENV MYPATH /usr/local
WORKDIR $MYPATH
 
#安装vim编辑器
RUN yum -y install vim
#安装ifconfig命令查看网络IP
RUN yum -y install net-tools
#安装java8及lib库
RUN yum -y install glibc.i686
RUN mkdir /usr/local/java
#ADD 是相对路径jar,把jdk-8u171-linux-x64.tar.gz添加到容器中,安装包必须要和Dockerfile文件在同一位置
ADD jdk-8u191-linux-x64.tar.gz /usr/local/java/
#配置java环境变量
ENV JAVA_HOME /usr/local/java/jdk1.8.0_191
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 80
 
CMD echo $MYPATH
CMD echo "success--------------ok"
CMD /bin/bash

3、构建

bash 复制代码
#docker build -t 新镜像名字:TAG .
docker build -t centosjava8:1.5 .   #上面TAG后面有个空格,有个点

4、运行

bash 复制代码
docker images
REPOSITORY                                                    TAG       IMAGE ID       CREATED          SIZE
centosjava8                                                   1.5       1e11fa486f29   24 minutes ago   1.37GB


docker run -it 1e11fa486f29

二、虚悬镜像 ,仓库名、标签都是<none>的镜像,俗称dangling image

1、构建一个虚悬镜像

bash 复制代码
mkdir test
cd  test/
vim Dockerfile

FROM ubuntu
CMD echo'action is success'

2、只查看虚悬镜像

bash 复制代码
docker image ls -f dangling=true
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
<none>       <none>    629492e652de   2 years ago   72.8MB

3、虚悬镜像已经失去存在价值,可以删除

bash 复制代码
docker image prune

WARNING! This will remove all dangling images.
Are you sure you want to continue? [y/N] y
Deleted Images:
deleted: sha256:629492e652de4feaa824ce5ee7cf85ccd45166c7c4efe5dd82710d616240261b

Total reclaimed space: 0B

再次查询,发现就没有虚悬镜像了。

三、自定义myubuntu镜像

1、编写,准备编写Dockerfile文件

bash 复制代码
mkdir myubuntu
cd myubuntu/

vim Dockerfile

FROM ubuntu
MAINTAINER licq<licq5427@126.com>
 
ENV MYPATH /usr/local
WORKDIR $MYPATH
 
RUN apt-get update
RUN apt-get install net-tools
RUN apt-get install -y iproute2
RUN apt-get install -y inetutils-ping
 
EXPOSE 80
 
CMD echo $MYPATH
CMD echo "install inconfig cmd into ubuntu success--------------ok"
CMD /bin/bash

2、构建docker build -t 新镜像名字:TAG .

bash 复制代码
docker build -t myubuntu:1.5 .

3、运行docker run -it 新镜像名字:TAG

bash 复制代码
docker run -it myubuntu:1.5 
相关推荐
Championship.23.241 分钟前
Linux 3.0 音频机制深度解析:ALSA基础架构与传统音频驱动模型
linux·运维·音视频·alsa
Yukinaaaa18 分钟前
以“轮盘数组”思维彻底搞懂并实现阻塞队列
java·服务器·ide·安全·javaee·阻塞队列·轮盘数组
Tian_Hang26 分钟前
Linux基础知识(四)
linux·ide·驱动开发·计算机视觉·硬件工程·动画
无证驾驶梁嗖嗖28 分钟前
ubuntu下测试nvme带宽和健康度
运维
HLC++1 小时前
Linux文件操作
linux·运维·服务器
InfraSense1 小时前
多门店运维闭环全景架构:监控+告警+工单+SLA+复盘,一套最小可用系统怎么串起来
运维·msp
Sirius Wu1 小时前
当前主流 RAG 架构全景及轻量级向量库选型深度分析
运维·人工智能·架构·aigc
晚风予卿云月1 小时前
【Linux】进程控制(二)——进程等待 全方位详解
linux·运维·服务器·进程控制·进程等待
上天_去_做颗惺星 EVE_BLUE1 小时前
【新 Linux 服务器上手全攻略】系统巡检、存储规划与开发环境初始化
linux·运维·服务器·ubuntu·macos·centos
Titan20241 小时前
Linux文件系统
linux·服务器