zoukankan      html  css  js  c++  java
  • dockerfile

    实例1

    [root@lab2 docker-file]# cd server1/
    [root@lab2 server1]# ls
    a.sh ddbes-server1-0.0.1-SNAPSHOT.jar Dockerfile


    [root@lab2 docker-file]# cat server1/Dockerfile
    FROM java:8-jre-alpine
    COPY ddbes-server1-0.0.1-SNAPSHOT.jar /opt/docker-file/server1/ddbes-server1-0.0.1-SNAPSHOT.jar
    WORKDIR /opt/docker-file/server1
    EXPOSE 8881
    CMD ["java", "-jar", "ddbes-server1-0.0.1-SNAPSHOT.jar"]

    [root@lab2 server1]# docker build -t server1 /opt/docker-file/server1/

    实例2、

    [root@lab2 docker-file]# cd server2/
    [root@lab2 server2]# ls
    ddbes-server2-0.0.1-SNAPSHOT.jar Dockerfile

    [root@lab2 server2]# cat Dockerfile
    FROM java:8-jre-alpine
    COPY ddbes-server2-0.0.1-SNAPSHOT.jar /opt/docker-file/server2/ddbes-server2-0.0.1-SNAPSHOT.jar
    WORKDIR /opt/docker-file/server2
    EXPOSE 8882
    CMD ["java", "-jar", "ddbes-server2-0.0.1-SNAPSHOT.jar"]

    [root@lab2 server2]# docker build -t server2 /opt/docker-file/server2/

    实例3、

    [root@ecs-8ee4 tomcat]# ls
    apache-tomcat-8.5.31.tar.gz Dockerfile jdk-8u171-linux-x64.tar.gz ssoserver.war
    [root@ecs-8ee4 tomcat]# cat Dockerfile
    from centos
    ADD apache-tomcat-8.5.31.tar.gz /usr/local
    ADD jdk-8u171-linux-x64.tar.gz /usr/local
    COPY hiteamDDBES.war /usr/local/apache-tomcat-8.5.31/webapps/
    #set environment variable
    ENV JAVA_HOME /usr/local/jdk1.8.0_171
    ENV PATH $JAVA_HOME/bin:$PATH
    EXPOSE 8080
    RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
    #define entry point which will be run first when the container starts up
    ENTRYPOINT /usr/local/apache-tomcat-8.5.31/bin/startup.sh && tail -F /usr/local/apache-tomcat-8.5.31/logs/catalina.out


    [root@ecs-8ee4 tomcat]# docker build -t ceshi .


    [root@ecs-8ee4 tomcat]# docker tag ceshi 114.116.65.232:5000/library/ceshi/latest:v$BUILD_NUMBER
    [root@ecs-8ee4 tomcat]#
    [root@ecs-8ee4 tomcat]#
    [root@ecs-8ee4 tomcat]# docker run -d -p 8085:8080 --restart=always --name ceshi 114.116.65.232:5000/library/ceshi/latest:v$BUILD_NUMBER

    访问:养成带上绝对路径的习惯,否则总是访问到tomcat的首页

    http://114.116.65.232:8085/ssoserver/

     使用Dockerfile搭建jdk、tomcat运行环境

    https://blog.csdn.net/yjk13703623757/article/details/68944549

    https://blog.csdn.net/qq_24557827/article/details/73729913

    注意:不能先解压安装包,这样虽然能打包,但是在k8s里面不显示


    [root@host-10-1-1-71 dandang]# cat Dockerfile
    FROM centos
    ADD apache-tomcat-8.5.31.tar.gz /usr/local
    ADD jdk-8u171-linux-x64.tar.gz /usr/local
    COPY hiteamDDBES.war /usr/local/apache-tomcat-8.5.31/webapps/
    #set environment variable
    ENV JAVA_HOME /usr/local/jdk1.8.0_171
    ENV PATH $JAVA_HOME/bin:$PATH
    EXPOSE 8080
    RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
    #define entry point which will be run first when the container starts up
    ENTRYPOINT /usr/local/apache-tomcat-8.5.31/bin/startup.sh && tail -F /usr/local/apache-tomcat-8.5.31/logs/catalina.out

    [root@host-10-1-1-71 dandang]# docker build -t dandang:v1 .


    访问:

    使用jenkins镜像-1.142 制作带maven、jdk镜像,  不要单独制作jenkins镜像,试过多次没有成功,要用现成的jenkins镜像

    [root@kube-node3 ~]# cat jenkins-dockerfile/Dockerfile

    FROM jenkins/jenkins

    ADD apache-maven-3.5.4-bin.tar.gz /usr/local/
    ENV MAVEN_HOME=/usr/local/apache-maven-3.5.4
    ENV PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
    USER root

    RUN apt-get update
    && apt-get install -y sudo
    && rm -rf /var/lib/apt/lists/*

    RUN echo "jenkins ALL=NOPASSWD: ALL" >> /etc/sudoers
    USER jenkins

    Dockerfile构建dicker镜像

    [root@bogon ~]# mkdir /opt/docker-file
    [root@bogon ~]# cd /opt/docker-file/
    [root@bogon docker-file]# mkdir nginx
    [root@bogon docker-file]# cd nginx/
    [root@bogon nginx]# wget http://nginx.org/download/nginx-1.9.9.tar.gz
    [root@bogon nginx]# wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.42.tar.gz
    [root@bogon nginx]# vi Dockerfile #必须大写
    #this is my dockerfile
    #verion 1.0
    #auther zi hao

    #Base imags
    FROM centos :默认从本地

    #MAINTAINER
    MAINTAINER zi hao

    #ADD
    ADD pcre-8.42.tar.gz /usr/local/src
    ADD nginx-1.9.9.tar.gz /usr/local/src

    #RUN
    RUN yum install -y wget gcc gcc-c++ make openssl-devel
    RUN useradd -s /sbin/nologin -M www

    #WORKDIR
    WORKDIR /usr/local/src/nginx-1.9.9
    RUN ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_ssl_module --with-http_stub_status_module --with-pcre=/usr/local/src/pcre-8.42 && make && make install
    RUN echo "daemon off;" >> /usr/local/nginx/nginx.conf

    ENV PATH /usr/local/ngix/sbin:$PATH
    EXPOSE 80
    CMD ["nginx"]

    dockerfile中设置环境变量

    设置环境变量要用 ENV

    ENV JAVA_HOME /usr/local/jdk1.8.0_171
    ENV PATH $JAVA_HOME/bin:$PATH


    用 echo "JAVA_HOME /usr/local/jdk1.8.0_171" >> /etc/profile 就出错,弄的好苦,之前一直出错,弄了一天,

    后来改成 ENV 就好了

    注意:

    设置环境变量要用 ENV


    ENV JAVA_HOME /usr/local/jdk1.8.0_171
    ENV PATH $JAVA_HOME/bin:$PATH


    用 echo "JAVA_HOME /usr/local/jdk1.8.0_171" >> /etc/profile 就出错,弄的好苦,之前一直出错,弄了一天,

    后来改成 ENV 就好了

  • 相关阅读:
    门禁复制
    ImportError: cannot import name 'COMMAND' from 'MySQLdb.constants'
    Python3:模块:ModuleNotFoundError No module named 'MySQLdb'
    zookeeper问题:关于Unable to read additional data from server sessionid 0x0问题的解决
    Linux内存分析free与cache清理
    X-pack结合LDAP进行权限认证
    Django2.2框架:ORM数据库操作
    Django框架:模板继承和静态文件配置
    Djiango框架:模板语法
    Django2.2.x框架:基础篇(二)
  • 原文地址:https://www.cnblogs.com/effortsing/p/10013599.html
Copyright © 2011-2022 走看看