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 
相关推荐
喜欢你,还有大家几秒前
Linux笔记8——shell编程基础-2
linux·服务器·笔记
泽虞10 分钟前
《LINUX系统编程》笔记p3
linux·运维·服务器·c语言·笔记·面试
源代码杀手37 分钟前
大模型微调训练资源占用查询:Windows 10 查看 NVIDIA 显卡GPU状态教程(替代 Ubuntu 下 watch nvidia-smi)
linux·windows·ubuntu
苹果醋32 小时前
Java并发编程-Java内存模型(JMM)
java·运维·spring boot·mysql·nginx
dingcb1682 小时前
4090服务器无法sudo apt update 问题解决
运维·服务器
头发那是一根不剩了2 小时前
服务器硬盘进行分区和挂载
linux·运维·服务器
Johny_Zhao2 小时前
Linux防止rm误操作防护方案
linux·网络·人工智能·网络安全·信息安全·云计算·yum源·系统运维
心一信息3 小时前
如何通过华为无线控制器添加一个名为yunwei的无线网络
运维·网络·华为
stark张宇3 小时前
Linux 零基础入门,看这一篇就够了
linux·服务器
TDengine (老段)3 小时前
TDengine IDMP 运维指南(4. 使用 Docker 部署)
运维·数据库·物联网·docker·时序数据库·tdengine·涛思数据