构建jdk17包含maven的基础镜像

1、先拉取jdk17基础镜像

bash 复制代码
docker pull openjdk:17-jdk-alpine

2、使用jdk17基础镜像创建容器

bash 复制代码
docker run -it openjdk:17-jdk-alpine sh
或
docker run -it --name jdk17 openjdk:17-jdk-alpine sh

3、修改镜像源地址

bash 复制代码
cat /etc/apk/repositories
https://mirrors.aliyun.com/alpine/v3.14/main
https://mirrors.aliyun.com/alpine/v3.14/community

4、下载安装maven(使用离线包安装)

下载 apache-maven-3.6.3-bin.tar.gz 离线包

将离线包复制到容器目录中

bash 复制代码
docker cp d:/apache-maven-3.6.3-bin.tar.gz jdk17:/usr/share/

5、进入容器解压maven

bash 复制代码
docker exec -it jdk17 sh

# 进入maven目录
cd /usr/share/

# 解压
tar -zxvf apache-maven-3.6.3-bin.tar.gz

# 重命名文件夹
mv apache-maven-3.6.3/ maven

# 建mvn命令软链接
ln -s /usr/share/maven/bin/mvn /usr/bin/mvn

6、查看maven是否安装成功

mvn --version

7、构建镜像

bash 复制代码
命令:
docker commit -m "信息" <CONTAINER_ID> <镜像名>

docker commit -m "包含maven-3.6.3的jdk17镜像" 13f2c4d97abe maven3-jdk17/openjdk:17-jdk-alpine
相关推荐
java_logo5 小时前
Docker 部署 DeepSeek Harness(moelin):轻松搭建带登录的本地 AI Agent 平台
运维·docker·容器·ai agent·deepseek·harness·轩辕镜像
xbzb6 小时前
容器 IP 每次重建都变?docker network 五种模式与自定义网桥固定地址
网络·docker·容器·ip·network·固定
打工仔折腾 AI10 小时前
Changedetection.io 网页变动监控:Docker 部署、通知配置与公网暴露实践
运维·人工智能·后端·python·docker·容器·性能优化
xbzb14 小时前
自建镜像仓库:registry 一条命令 + harbor 部署、授权、跨库同步与卸载
docker·harbor·镜像·仓库·同步·registry
wz97542 天前
Docker 从 systemd 托管容器、overlay2 存储驱动到 Compose 多容器实战
spring cloud·docker·eureka
新*2 天前
ES 7.17 三节点 Docker 集群接入 IK 自定义词典:一次从丢插件到热更新的完整排障
运维·elasticsearch·docker·中文分词·ik分词
小白的码BUG之路2 天前
Jenkins -- gitee+docker+harbor+k8s 部署项目
docker·gitee·jenkins
AlfredZhao2 天前
Docker Compose 平滑切换环境变量文件,容器配置不残留
docker
duansamve2 天前
Python3+Flask+PostgreSQL18+Vue3项目生产环境用docker如何部署?
python·docker·flask
那明眸似水3 天前
云原生项目三:Docker秒级启动NextCloud个人网盘存储办公系统
linux·运维·docker·云原生·容器