ToB企服应用市场:ToB评测及商务社交产业平台

标题: 自界说镜像上传阿里云 [打印本页]

作者: 河曲智叟    时间: 2024-9-7 05:25
标题: 自界说镜像上传阿里云
目次
一、jdkv1.0的制作
1.编写一个Dockerfile文件
2.编写dockerfile文件
          3、执行Dockerfile文件
4.检察镜像
5、创建并启动容器
          6、查抄是否有问题
二、alpine制作jdk镜像
1、alpine Linux简介
2、基于alpine制作JDK8镜像
三、Alpine制作jre镜像(瘦身)
1、首先下载jre
2、gz上传至centos,并删除无用的文件,并重新压缩
3、创建并编辑dockerfile
          4、执行dockerfile创建镜像
          5、进入容器
          6、测试jdk
四、Docker镜像上传至阿里云
1、前期预备
2、push(推)镜像
          3、pull(拉)镜像

   
一、jdkv1.0的制作

1.编写一个Dockerfile文件

  1. vi dockerfile
复制代码
2.编写dockerfile文件

  1. #1.指定基础镜像,并且必须是第一条指令
  2. FROM centos:7
  3. #2.指明该镜像的作者和其电子邮件
  4. MAINTAINER zsx "ycs020715@163.com"
  5. #3.在构建镜像时,指定镜像的工作目录,之后的命令都是基于此工作目录,如果不存在,则会创建目录
  6. WORKDIR /zsx_docker/jdk
  7. #4.一个复制命令,把jdk安装文件复制到镜像中,语法:ADD <src>... <dest>,注意:jdk*.tar.gz使用的是相对路径
  8. ADD jdk-8u221-linux-x64.tar.gz /zsx_docker/jdk/
  9. #5.配置环境变量
  10. ENV JAVA_HOME=/zsx_docker/jdk/jdk1.8.0_221
  11. ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
  12. ENV PATH=$JAVA_HOME/bin:$PATH
  13. #容器启动时需要执行的命令
  14. #CMD ["java","-version"]
复制代码
3、执行Dockerfile文件

初次依赖镜像的时候会下载相应镜像
  1. docker build -t jdk8:v1.0 .
复制代码
4.检察镜像

  1. docker images
复制代码
5、创建并启动容器

  1. docker run -it jdk8:v1.0 /bin/bash
复制代码
6、查抄是否有问题

  1. java -version
复制代码

二、alpine制作jdk镜像

1、alpine Linux简介

   1.Alpine Linux是一个轻型Linux发行版,它不同于通常的Linux发行版,Alpine采用了musl libc 和
BusyBox以减少系统的体积和运行时的资源斲丧。
2.Alpine Linux提供了本身的包管理工具:apk(注意:ubuntu中是apt-get),我们可以通过https://pkgs.alpinelinux.org/packages 查询包信息
3.Alpine Docker镜像继承了Alpine Linux发行版的这些优势,相比于其他Linux Docker镜像,它的体积非常小
对比常用的、没有压缩过的基础镜像(检察当前的:latest标签):
Alpine - 4.8MB
centos - 124.8 MB
Debian - 125.1MB
Centos - 196MB
4.建议使用Alpine Linux 3.10.0版本,这也是 v3.10 稳定系列的首个版本
alpine:3.10
  2、基于alpine制作JDK8镜像

备份上次编写的dockerfile
  1. cp dockerfile dockerfile_centos-jdk-bak
复制代码
删除编写过的dockerfile
  1. rm -rf dockerfile
复制代码
编写dockerfile文件
vi dockerfile
  1. #1.指定基础镜像,并且必须是第一条指令
  2. FROM alpine:latest
  3. #FROM alpine:3.10
  4. #2.指明该镜像的作者和其电子邮件
  5. MAINTAINER zsx "zsx@qq.com"
  6. #3.在构建镜像时,指定镜像的工作目录,之后的命令都是基于此工作目录,如果不存在,则会创建目录
  7. WORKDIR /zsx_docker/jdk
  8. #4.将一些安装包复制到镜像中,语法:ADD/COPY <src>... <dest>
  9. ## ADD与COPY的区别:ADD复制并解压,COPY仅复制
  10. ADD jdk-8u221-linux-x64.tar.gz /zsx_docker/jdk/
  11. ## glibc安装包如果从网络下载速度实在是太慢了,先提前下载复制到镜像中
  12. COPY glibc-2.29-r0.apk /zsx_docker/jdk/
  13. COPY glibc-bin-2.29-r0.apk /zsx_docker/jdk/
  14. COPY glibc-i18n-2.29-r0.apk /zsx_docker/jdk/
  15. #5.更新Alpine的软件源为阿里云,因为从默认官源拉取实在太慢了
  16. RUN echo http://mirrors.aliyun.com/
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4