https://www.cnblogs.com/dfengwei/p/7144937.html
FROM openjdk:8-jre
#声明CATALINA_HOME环境变量,这个变量大家都了解。
ENV CATALINA_HOME /usr/local/tomcat
#将Tomcat下的bin路径加入到PATH环境变量中。
ENV PATH $CATALINA_HOME/bin:$PATH
#创建tomcat路径。
RUN mkdir -p "$CATALINA_HOME"
#指定RUN、CMD、ENTRYPOINT命令的当前工作路径。
WORKDIR $CATALINA_HOME
#Tomcat相关文件的版本。
ENV TOMCAT_MAJOR 8
ENV TOMCAT_VERSION 8.5.16
#Tomcat相关文件下载地址。
ENV TOMCAT_TGZ_URL https://www.apache.org/dyn/closer.cgi?action=download&filename=tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz
ENV TOMCAT_ASC_URL https://www.apache.org/dist/tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz.asc
#执行命令
RUN set -x \
\
#下载Tomcat压缩文件
&& wget -O tomcat.tar.gz "$TOMCAT_TGZ_URL" \
&& wget -O tomcat.tar.gz.asc "$TOMCAT_ASC_URL" \
#解压Tomcat
&& tar -xvf tomcat.tar.gz --strip-components=1 \
# 删除供Windows系统使用的.bat文件
&& rm bin/*.bat \
# 删除压缩文件
&& rm tomcat.tar.gz* \
#暴露8080端口
EXPOSE 8080
#容器启动时执行的命令。
CMD ["catalina.sh", "run"]
centos基础镜像存在漏洞
构建centos7基础镜像
FROM centos:7
MAINTAINER "Geray <1690014753@qq.com>"
RUN yum -y install kde-l10n-Chinese telnet wget && \
yum -y reinstall glibc-common && \
yum clean all && \
localedef -c -f UTF-8 -i zh_CN zh_CN.utf8 && \
cat /dev/null > /etc/locale.conf && echo "LC_ALL=\"zh_CN.UTF-8\"" > /etc/locale.conf
#env
ENV TZ "Asia/Shanghai"
#ENV LANG en_US.UTF-8
ENV LANG zh_CN.UTF-8
# 升级openssh
RUN yum -y install net-tools && \
yum -y install gcc make perl zlib zlib-devel pam pam-devel && \
wget https://www.openssl.org/source/openssl-1.1.1c.tar.gz && \
wget http://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.9p1.tar.gz && \
# 安装openssl
tar -xf openssl-1.1.1c.tar.gz -C / && \
mkdir -p /opt/modules/ssl/ && \
cd openssl-1.1.1c && \
./config --prefix=/opt/modules/ssl/ && \
make && make install && \
ln -s /opt/modules/ssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1 && \
ln -s /opt/modules/ssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1 && \
ln -s /opt/modules/ssl/bin/openssl /usr/bin/openssl && \
# 安装openssh
tar -zxvf openssh-7.9p1.tar.gz -C ./ && \
cd openssh-7.9p1 && \
./configure --prefix=/opt/modules/ssh --sysconfdir=/etc/ssh --with-ssl-dir=/opt/modules/ssl && \
make && make install && \
# 设置开机自启
cp /opt/software/openssh-7.9p1/contrib/redhat/sshd.init /etc/init.d/sshd && \
chmod u+x /etc/init.d/sshd
升级openssh
https://blog.csdn.net/qq_31136839/article/details/95596527
wget https://www.openssl.org/source/openssl-1.1.1c.tar.gz
wget http://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.9p1.tar.gz
# 安装依赖
yum -y install gcc make perl zlib zlib-devel pam pam-devel
# 安装openSSH之前,首先要安装OpenSSL
tar -zxvf ./openssl-1.1.1c.tar.gz -C ./
./config --prefix=/opt/modules/ssl/
make && make install
# 为Openssl库创建软连接,定位到正确位置
ln -s /opt/modules/ssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
ln -s /opt/modules/ssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
# 查看版本
/opt/modules/ssl/bin/openssl version
vi ~/.bashrc
export PATH="/opt/modules/ssl/bin:${PATH}"
whereis openssl
# 安装openssh-7.9p1
tar -zxvf openssh-7.9p1.tar.gz -C ./
cd openssh-7.9p1
./configure --prefix=/opt/modules/ssh --sysconfdir=/etc/ssh --with-ssl-dir=/opt/modules/ssl
make && make install
cp /opt/software/openssh-7.9p1/contrib/redhat/sshd.init /etc/init.d/sshd
chmod u+x /etc/init.d/sshd