tomee4hobbysign/dockerfile
2025-10-06 19:30:21 +02:00

40 lines
1.5 KiB
Plaintext

FROM tomee:9.1.3-jre17-Semeru-ubuntu-plume
# Install nano
USER root
RUN apt update && apt install -y nano cups-client cups-bsd && apt clean
# Create a user with a home directory
RUN useradd -u 1000 -m -d /home/hobbyadmin -s /bin/bash hobbyadmin
# Set the working directory
WORKDIR /usr/local/tomee
# Create the output directory and set permissions
RUN mkdir -p /usr/local/tomee/output && chown -R 1000:1000 /usr/local/tomee/output
RUN mkdir -p /usr/local/tomee/config && chown -R 1000:1000 /usr/local/tomee/config
# Copy application files
# COPY . /usr/local/tomee
RUN if [ -d /usr/local/tomee/webapps/ROOT ]; then mv /usr/local/tomee/webapps/ROOT /usr/local/tomee/webapps/welcome; fi
RUN if [ -f /usr/local/tomee/webapps/ROOT.war ]; then mv /usr/local/tomee/webapps/ROOT.war /usr/local/tomee/webapps/admin.war; fi
COPY tomcat-users.xml /usr/local/tomee/conf/tomcat-users.xml
COPY manager.xml /usr/local/tomee/conf/Catalina/localhost/manager.xml
# Create a startup script to set umask and run the application
RUN echo '#!/bin/sh' > /usr/local/tomee/start.sh \
&& echo 'umask 002' >> /usr/local/tomee/start.sh \
&& echo 'catalina.sh run' >> /usr/local/tomee/start.sh
# Make the startup script executable
RUN chmod +x /usr/local/tomee/start.sh
# Change ownership of all files to user 1000
RUN chown -R 1000:1000 /usr/local/tomee
# Set the user to "hobbyadmin" (replace 1000 with the actual UID of hobbyadmin)
USER hobbyadmin
# Run the startup script
CMD ["/usr/local/tomee/start.sh"]