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 
相关推荐
June`几秒前
IO模型全解析:从阻塞到异步(高并发的reactor模型)
linux·服务器·网络·c++
ASS-ASH6 分钟前
快速处理虚拟机磁盘扩容问题
linux·数据库·vmware·虚拟机·磁盘扩容
AI_56787 分钟前
零基础学Linux:21天从“命令小白”到独立部署服务器
linux·服务器·人工智能·github
江湖有缘8 分钟前
Fenrus + Docker 实战:构建简洁高效的浏览器新标签页
运维·docker·容器
乾元9 分钟前
如何把 CCIE / HCIE 的实验案例改造成 AI 驱动的工程项目——从“实验室能力”到“可交付系统”的完整迁移路径
大数据·运维·网络·人工智能·深度学习·安全·机器学习
不染尘.9 分钟前
Linux基本概述
linux·windows·centos·ssh
lpfasd12311 分钟前
宝塔面板(BT Panel)集成雷池 SafeLine WAF(社区版)
运维
weixin_4462608512 分钟前
XPipe: 轻松访问你的服务器基础设施 [特殊字符]
运维·服务器
TTGGGFF13 分钟前
GLM-4V-9B 视觉多模态模型本地部署教程【保姆级教程】
linux·运维·服务器·图文对话
r***013813 分钟前
Nginx代理到https地址忽略证书验证配置
运维·nginx·https