概述
debian版本
版本名称 | 版本号 | Docker镜像 | 描述 |
---|---|---|---|
bullseye | 11 | debian:bullseye、debian:bullseye-slim | 当前的稳定(stable)版 |
buster | 10 | debian:buster、debian:buster-slim | 当前的旧的稳定(oldstable)版 |
stretch | 9 | debian:stretch、debian:stretch-slim | 更旧的稳定(oldoldstable)版,现有长期支持 |
jessie | 8 | debian:jessie | 已存档版本,现有扩展长期支持 |
wheezy | 7 | debian:wheezy | 被淘汰的稳定版 |
squeeze | 6.0 | debian:squeeze | 被淘汰的稳定版 |
lenny | 5.0 | debian:lenny | 被淘汰的稳定版 |
etch | 4.0 | debian:etch | 被淘汰的稳定版 |
sarge | 3.1 | debian:sarge | 被淘汰的稳定版 |
woody | 3.0 | debian:woody | 被淘汰的稳定版 |
potato | 2.2 | debian:potato | 被淘汰的稳定版 |
slink | 2.1 | debian:slink | 被淘汰的稳定版 |
hamm | 2.0 | debian:hamm | 被淘汰的稳定版 |
Ubuntu版本
版本名称 | 版本号 | Docker镜像 |
---|---|---|
precise | 12.04 | ubuntu:12.04 |
quantal | 12.10 | ubuntu:12.10 |
trusty | 14.04 | ubuntu:14.04 |
utopic | 14.10 | ubuntu:14.10 |
vivid | 15.04 | ubuntu:15.04 |
wily | 15.10 | ubuntu:15.10 |
xenial | 16.04 | ubuntu:16.04 |
yakkety | 16.10 | ubuntu:16.10 |
bionic | 18.04 | ubuntu:18.04 |
cosmic | 18.10 | ubuntu:18.10 |
focal | 20.04 | ubuntu:20.04 |
groovy | 20.10 | ubuntu:20.10 |
jammy | 22.04 | ubuntu:22.04 |
kinetic | 22.10 | ubuntu:22.10 |
lunar | 23.04 | ubuntu:23.04 |
构建「构建环境」镜像
FROM ubuntu:22.10
ENV JAVA_HOME=/opt/jdk8u352-b08
ENV M2_HOME=/opt/apache-maven-3.8.6
ENV PATH=$JAVA_HOME/bin:$M2_HOME/bin:$PATH
ADD OpenJDK8U-jdk_x64_linux_hotspot_8u352b08.tar.gz /opt/
ADD apache-maven-3.8.6-bin.tar.gz /opt/
RUN
echo "deb http://mirrors.cloud.tencent.com/ubuntu/ kinetic main restricted universe multiverse" > /etc/apt/sources.list &&
echo "deb http://mirrors.cloud.tencent.com/ubuntu/ kinetic-security main restricted universe multiverse" >> /etc/apt/sources.list &&
echo "deb http://mirrors.cloud.tencent.com/ubuntu/ kinetic-updates main restricted universe multiverse" >> /etc/apt/sources.list &&
echo "deb http://mirrors.cloud.tencent.com/ubuntu/ kinetic-backports main restricted universe multiverse" >> /etc/apt/sources.list &&
echo "deb http://mirrors.cloud.tencent.com/ubuntu/ kinetic-proposed main restricted universe multiverse" >> /etc/apt/sources.list &&
echo "deb-src http://mirrors.cloud.tencent.com/ubuntu/ kinetic main restricted universe multiverse" >> /etc/apt/sources.list &&
echo "deb-src http://mirrors.cloud.tencent.com/ubuntu/ kinetic-security main restricted universe multiverse" >> /etc/apt/sources.list &&
echo "deb-src http://mirrors.cloud.tencent.com/ubuntu/ kinetic-updates main restricted universe multiverse" >> /etc/apt/sources.list &&
echo "deb-src http://mirrors.cloud.tencent.com/ubuntu/ kinetic-backports main restricted universe multiverse" >> /etc/apt/sources.list &&
echo "deb-src http://mirrors.cloud.tencent.com/ubuntu/ kinetic-proposed main restricted universe multiverse" >> /etc/apt/sources.list
COPY settings.xml /root/.m2/
如果基础镜像采用了Debian,则在执行apt-update
时会出现如下的异常:
# apt-get update
Get:1 http://mirrors.cloud.tencent.com/ubuntu kinetic InRelease [267 kB]
Get:2 http://mirrors.cloud.tencent.com/ubuntu kinetic-security InRelease [109 kB]
Get:3 http://mirrors.cloud.tencent.com/ubuntu kinetic-updates InRelease [109 kB]
Err:1 http://mirrors.cloud.tencent.com/ubuntu kinetic InRelease
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 871920D1991BC93C
Err:2 http://mirrors.cloud.tencent.com/ubuntu kinetic-security InRelease
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 871920D1991BC93C
Err:3 http://mirrors.cloud.tencent.com/ubuntu kinetic-updates InRelease
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 871920D1991BC93C
Get:4 http://mirrors.cloud.tencent.com/ubuntu kinetic-backports InRelease [99.9 kB]
Err:4 http://mirrors.cloud.tencent.com/ubuntu kinetic-backports InRelease
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 871920D1991BC93C
Get:5 http://mirrors.cloud.tencent.com/ubuntu kinetic-proposed InRelease [267 kB]
Err:5 http://mirrors.cloud.tencent.com/ubuntu kinetic-proposed InRelease
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 871920D1991BC93C
Reading package lists... Done
W: GPG error: http://mirrors.cloud.tencent.com/ubuntu kinetic InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 871920D1991BC93C
E: The repository 'http://mirrors.cloud.tencent.com/ubuntu kinetic InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
W: GPG error: http://mirrors.cloud.tencent.com/ubuntu kinetic-security InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 871920D1991BC93C
E: The repository 'http://mirrors.cloud.tencent.com/ubuntu kinetic-security InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
W: GPG error: http://mirrors.cloud.tencent.com/ubuntu kinetic-updates InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 871920D1991BC93C
E: The repository 'http://mirrors.cloud.tencent.com/ubuntu kinetic-updates InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
W: GPG error: http://mirrors.cloud.tencent.com/ubuntu kinetic-backports InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 871920D1991BC93C
E: The repository 'http://mirrors.cloud.tencent.com/ubuntu kinetic-backports InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
W: GPG error: http://mirrors.cloud.tencent.com/ubuntu kinetic-proposed InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 871920D1991BC93C
E: The repository 'http://mirrors.cloud.tencent.com/ubuntu kinetic-proposed InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
可以使用如下办法
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 871920D1991BC93C
如果有其他PUBKEY
不可用,则采用同样的方法解决,注意apt-key
需要使用旧的源安装好
构建「运行环境」镜像
FROM ubuntu:22.10
ENV JAVA_HOME=/opt/jdk8u352-b08
ENV M2_HOME=/opt/apache-maven-3.8.6
ENV PATH=$JAVA_HOME/bin:$M2_HOME/bin:$PATH
ADD OpenJDK8U-jdk_x64_linux_hotspot_8u352b08.tar.gz /opt/
RUN
echo "deb http://mirrors.cloud.tencent.com/ubuntu/ kinetic main restricted universe multiverse" > /etc/apt/sources.list &&
echo "deb http://mirrors.cloud.tencent.com/ubuntu/ kinetic-security main restricted universe multiverse" >> /etc/apt/sources.list &&
echo "deb http://mirrors.cloud.tencent.com/ubuntu/ kinetic-updates main restricted universe multiverse" >> /etc/apt/sources.list &&
echo "deb http://mirrors.cloud.tencent.com/ubuntu/ kinetic-backports main restricted universe multiverse" >> /etc/apt/sources.list &&
echo "deb http://mirrors.cloud.tencent.com/ubuntu/ kinetic-proposed main restricted universe multiverse" >> /etc/apt/sources.list &&
echo "deb-src http://mirrors.cloud.tencent.com/ubuntu/ kinetic main restricted universe multiverse" >> /etc/apt/sources.list &&
echo "deb-src http://mirrors.cloud.tencent.com/ubuntu/ kinetic-security main restricted universe multiverse" >> /etc/apt/sources.list &&
echo "deb-src http://mirrors.cloud.tencent.com/ubuntu/ kinetic-updates main restricted universe multiverse" >> /etc/apt/sources.list &&
echo "deb-src http://mirrors.cloud.tencent.com/ubuntu/ kinetic-backports main restricted universe multiverse" >> /etc/apt/sources.list &&
echo "deb-src http://mirrors.cloud.tencent.com/ubuntu/ kinetic-proposed main restricted universe multiverse" >> /etc/apt/sources.list
使用案例
FROM build-env:v1 as Builder
WORKDIR /work
COPY . /work/
RUN mvn -q clean package -DskipTests
FROM runtime-env:v1
WORKDIR /work
COPY --from=Builder /work/xxx.tgz /work
RUN tar xf xxx.tgz -C /work &&
rm -fr /work/xxx.tgz
EXPOSE 8080
ENTRYPOINT bash /work/limiter/run.sh run com.to.path.XXXApplication pro
如此,可以构建一个相对干净的运行环境。
最后
以上就是欣喜雪糕为你收集整理的基于干净的ubuntu或者debian构建java环境或者构建mvn环境的全部内容,希望文章能够帮你解决基于干净的ubuntu或者debian构建java环境或者构建mvn环境所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复