构建Ubuntu+GCC+jdk8的Docker镜像

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了构建Ubuntu+GCC+jdk8的Docker镜像相关的知识,希望对你有一定的参考价值。

参考技术A 基础镜像为Ubuntu 20.04,Ubuntu 的源存放在在 /etc/apt/ 目录下的 sources.list 文件中;
默认更新源是国外服务器,在更新连接相关的服务器的时候,可能出现无法链接的情况,导致系统的更新或者软件的安装无法正常完成。其实国内有很多的Ubuntu的镜像源。比较知名的有阿里、网易上的Ubuntu数据源。
改用国内阿里的软件源,在本机创建sources.list文件,构建镜像时,将此文件COPY到镜像中。

docker命令总结

容器三大核心概念:镜像,容器,仓库。
镜像:

  • 镜像是一个独立的文件系统,里面包含了运行环境和配置类似于一个小小型的linux系统
  • 镜像可由dockerfile来进行构建
  • 镜像是静态的,一经构建就无法更改
  • 镜像是多层存储结构,上一层以下一层为基础

容器:

  • 容器是镜像的运行实体,容器基于镜像创建
  • 应用在容器中运行
  • 容器也是多层存储结构,叫容器存储层
  • 也可以根据修改容器构建一个新的镜像

仓库:

  • 作用:用于存放镜像文件
  • 要区别于仓库register注册服务器

docker 命令总结

先看一下docker命令的分布情况,只要理解了docker三大核心概念基本就没有问题了。
技术图片

与镜像有关的命令

  • docker tag 源镜像:版本 :为一个镜像打标签,相当于一个镜像的新版本
  • docker history 镜像名称:镜像版本:查看镜像历史,更迭变化
  • docker images:列出全部镜像列表
  • docker rmi 镜像名称:镜像版本:删除镜像,加-f参数强制删除镜像
  • docker pull 镜像名称[:标签]:从镜像仓库中拉取镜像或者仓库
  • docker push 镜像名称:将一个镜像推送到镜像注册服务器
  • docker load :从一个 tar 包中加载一个镜像
  • docker import :从一个tar中加载内容,从而创建一个镜像
    docker load用来载入镜像包,docker import用来载入容器包,但两者都会恢复为镜像;docker load不能对载入的镜像重命名,而docker import可以为镜像指定新名称。

与容器有关的命令

  • docker ps :列出宿主主机上的容器
  • docker stop 容器名或ID:停止容器的运行,加上-t 参数可以让容器在停止前保存状态,默认为10秒
  • docker start 容器名或ID,docker restart 容器名或ID:开启容器,重新启动容器
  • docker pause 容器名或ID,docker unpause 容器名或ID:暂停容器中的所有进程,撤销暂停
  • docker rm 容器ID:删除一个或多个容器,-f参数强制删除一个容器,-l参数删除指向的连接,-v参数删除与该容器相关的卷
  • docker rename 旧名 新名称:重命名容器
  • docker kill 容器ID:关闭一个运行中的容器 (包括进程和所有相关资源)
  • docker stats 容器ID:输出(一个或多个)容器的资源使用统计信息,不写容器ID,默认输出所有运行中的容器资源使用情况
  • docker logs 容器ID:查看容器日志
  • docker top 容器ID:查看容器中正在运行的进程信息
  • docker diff 容器ID:查看容器中文件的变化情况,是增加了文件,还是改变了文件,等等
  • docker inspect 容器ID:查看容器的具体配置信息,配置位置等等信息
  • docker update 容器ID:更新容器的配置信息
  • docker exec -it 容器名 bash;与容器进行交互,也就是进入容器内执行一些命令
  • docker cp 本地文件路径 容器ID或名称:容器路径:将本机文件复制到容器中
  • docker container cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH:将容器中的文件复制到本地机中
  • docker export 容器名或ID:导出容器内容为一个 tar 包
  • docker save :将一个或多个镜像保存为tar 文件,例如:docker save -o n.tar nginx:v3
    docker save和docker export的区别:docker save保存的是镜像(image),docker export保存的是容器(container);

与仓库有关的命令

  • docker login -u 用户名 -p 密码;登录到docker镜像仓库
  • docker logout;从docker仓库中退出登录
  • docker search 镜像;在docker仓库中搜索镜像

以上是关于构建Ubuntu+GCC+jdk8的Docker镜像的主要内容,如果未能解决你的问题,请参考以下文章

Docker 搭建Ubuntu 16.0.4(银河麒麟V10) 构建环境

IDEA 打包docker镜像(以打包Jdk8为例)

Docker 镜像:基于 Ubuntu 的基础镜像中文问题解决

Docker -- 自定义镜像(Dockerfile)基于Ubuntu镜像构建一个新镜像基于java:8-alpine镜像将一个Java项目构建为镜像

docker基础

docker命令总结