• SupportTutorial
  • [Docker module] Use Dockerfile to build your own tomcat image

Dockerfile build image example
Use Dockerfile to build your own tomcat image

  1. First, create a directory to store the files needed to build the image.
    As shown in the figure:
    My files are stored in /www/mydockerfile/tomcat directory, dockerfile file, test project apptest directory, tomcat, jdk

    Create a directory, enter the directory, download tomcat, jdk, create a test page

    mkdir -p /www/mydockerfile/tomcat/apptest
    cd /www/mydockerfile/tomcat
    echo "Tomcat test app1" > /www/mydockerfile/tomcat/apptest/index.jsp
    wget http://node.aapanel.com/install/src/apache-tomcat-9.0.62.tar.gz && wget http://node.aapanel.com/install/src/jdk-8u121-linux-x64.rpm
    

    The content of the dockerfile file is as follows: Please use the terminal or SSH tool to create it directly.

    cat > dockerfile << EOF
    FROM centos
    ## FROM from centos image, start build new image
    
    ADD apache-tomcat-9.0.62.tar.gz /usr/local
    ## ADD add files and automatically extract to /usr/local/apache-tomcat-9.0.62
    
    COPY apptest /usr/local/apache-tomcat-9.0.62/webapps/apptest
    ## COPY Copy all files under apptest to the container, if the container directory does not exist, the apptest directory will be created automatically
    
    COPY jdk-8u121-linux-x64.rpm /tmp/
    ## COPY copy jdk-8u121-linux-x64.rpm file to /tmp/
    
    ENV MYPATH=/usr/local/apache-tomcat-9.0.62
    ## ENV set container environment variables
    
    WORKDIR \$MYPATH
    ## WORKDIR Set the working directory, that is, enter the default directory of the container
    
    EXPOSE 8080 8009
    ## EXPOSE container exposed port
    
    RUN rpm -ivh /tmp/jdk-8u121-linux-x64.rpm && rm -f /tmp/jdk-8u121-linux-x64.rpm
    ## RUN command to install jdk, delete files after installation is complete
    
    CMD ["/usr/local/apache-tomcat-9.0.62/bin/catalina.sh", "run"]
    ## CMD Specify the command to run in the container, start tomcat.
    EOF
    

  2. Build tomcat image:
    Docker --> Image --> Build Image
    Dockerfile: /www/mydockerfile/tomcat/dockerfile
    Tag: tomcat_test:1.0


    Build image complete

  3. Create a container using the built image:
    Container --> Add container Note: The container added this time does not have data persistence set. If necessary, please set it at the Volume

    Container created successfully

  4. Access the tomcat of the container, if you cannot access it, please open port 8080 in the Security interface
    Use a browser to visit and check the effect: http://ip:8080/apptest/

For more information on how to use the dockerfile command, please check the official Docker documentation:
https://docs.docker.com/engine/reference/builder/

3 months later

Anyone help me awesome opensource apps deployment like rocketchat or mattermost or matrix or jisti via aapanel docker modules
How can deploy any opensource apps via docker module in aapanel ?
i am looking tutorial with example
anyone help me
i love opensource or github projects

    5 days later
    Connect with us: 📨 Telegram 💬 Discord Email: support@aapanel.com