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 
相关推荐
韩楚风3 小时前
【linux 多进程并发】linux进程状态与生命周期各阶段转换,进程状态查看分析,助力高性能优化
linux·服务器·性能优化·架构·gnu
陈苏同学3 小时前
4. 将pycharm本地项目同步到(Linux)服务器上——深度学习·科研实践·从0到1
linux·服务器·ide·人工智能·python·深度学习·pycharm
Ambition_LAO3 小时前
解决:进入 WSL(Windows Subsystem for Linux)以及将 PyCharm 2024 连接到 WSL
linux·pycharm
Pythonliu73 小时前
茴香豆 + Qwen-7B-Chat-Int8
linux·运维·服务器
你疯了抱抱我3 小时前
【RockyLinux 9.4】安装 NVIDIA 驱动,改变分辨率,避坑版本。(CentOS 系列也能用)
linux·运维·centos
追风赶月、3 小时前
【Linux】进程地址空间(初步了解)
linux
栎栎学编程3 小时前
Linux中环境变量
linux
我是哈哈hh4 小时前
专题十_穷举vs暴搜vs深搜vs回溯vs剪枝_二叉树的深度优先搜索_算法专题详细总结
服务器·数据结构·c++·算法·机器学习·深度优先·剪枝
郭二哈4 小时前
C++——模板进阶、继承
java·服务器·c++
挥剑决浮云 -4 小时前
Linux 之 安装软件、GCC编译器、Linux 操作系统基础
linux·服务器·c语言·c++·经验分享·笔记