继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

推送镜像到 OpenShift Docker Registry

海绵宝宝撒
关注TA
已关注
手记 417
粉丝 40
获赞 124

1. 下载 source-to-image 最新版 解压  配置到path

https://github.com/openshift/source-to-image/releases

2. 创建 S2I Builder镜像

s2i create s2i-tomcat s2i-tomcat

3. 编辑Dockerfile

# s2i-tomcatFROM openshift/base-centos7

MAINTAINER Rabbit <380303318@qq.com>

EXPOSE 8080

ENV TOMCAT_VERSION=8.5.24 \
    MAVEN_VERSION=3.5.2

LABEL io.k8s.description="Platform for building and running JEE applications on Tomcat" \
      io.k8s.display-name="Tomcat Builder" \
      io.openshift.expose-services="8080:http" \
      io.openshift.tags="builder,tomcat" \
      io.openshift.s2i.destination="/opt/s2i/destination"# Install Maven, Tomcat 8.5.24RUN INSTALL_PKGS="tar java-1.8.0-openjdk java-1.8.0-openjdk-devel" && \
    yum install -y --enablerepo=centosplus $INSTALL_PKGS && \
    rpm -V $INSTALL_PKGS && \
    yum clean all -y && \
    (curl -v http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/$MAVEN_VERSION/binaries/apache-maven-$MAVEN_VERSION-bin.tar.gz | \
    tar -zx -C /usr/local) && \
    ln -sf /usr/local/apache-maven-$MAVEN_VERSION/bin/mvn /usr/local/bin/mvn && \
    mkdir -p $HOME/.m2 && \
    mkdir -p /tomcat && \
    (curl -v http://mirrors.hust.edu.cn/apache/tomcat/tomcat-8/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz | tar -zx --strip-components=1 -C /tomcat) && \
    rm -rf /tomcat/webapps/* && \
    mkdir -p /opt/s2i/destination# Add s2i customizationsADD ./contrib/settings.xml $HOME/.m2/# Copy the S2I scripts from the specific language image to $STI_SCRIPTS_PATHCOPY ./s2i/bin/ $STI_SCRIPTS_PATHRUN chmod -R a+rw /tomcat && \
    chmod a+rwx /tomcat/* && \
    chmod +x /tomcat/bin/*.sh && \
    chmod -R a+rw $HOME && \
    chmod -R +x $STI_SCRIPTS_PATH && \
    chmod -R g+rw /opt/s2i/destination

USER 1001

CMD $STI_SCRIPTS_PATH/usage

4. 在assemble 最后面添加

mvn -Dmaven.test.skip=true clean packagemv ./target/*.war /tomcat/webapps/

5. 在run 最后面添加

bash -c "/tomcat/bin/catalina.sh run"

6. 把项目代码上传到git

https://github.com/silentwu/s2i-tomcat

在阿里云镜像仓库中配置 代码地址构建镜像

7. 导入镜像到openshift

oc import-image registry.cn-hangzhou.aliyuncs.com/monkeyk/s2i-tomcat:8.5.24 -n openshift --confirm --insecure

为了让OpenShift识别出这个镜像是S2I的Builder镜像,需要编辑刚导入的Image Stream,添加注解“tags”

# oc edit is/s2i-tomcat -n openshift

添加如下内容:

    tags:
      - annotations:
          description:  'Build and run Tomcat applications on CentOS 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/silentwu/s2i-tomcat.git.'
          iconClass: icon-wildfly
          openshift.io/display-name: Tomcat 8.5.24
          openshift.io/provider-display-name: 'Rabbit blog, http://blog.xianshiyue.com'
          sampleRepo: 'https://gitee.com/silentwu/openshift-tomcat.git'
          supports: 'tomcat:8.5.24,jee,java'
          tags: 'builder,tomcat,java'
          version: 8.5.24



作者:9527华安
链接:https://www.jianshu.com/p/fd3e62263046


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP