- Siapkan JDK, Maven, dan Tomcat 8.5
- Contoh aplikasi dari Mkyong CounterWebApp
- Build aplikasi dengan
mvn clean package
- Jalankan package war aplikasi di Tomcat.
-
Pindahkan target/CounterWebApp.war ke tomcat/webapps/
-
Jalankan tomcat
cd tomcat/bin chmod +x *.sh ./startup.sh # lihat log tail -f ../logs/catalina.out
-
Buka browser http://localhost:8080/CounterWebApp/
-
- Butuh image container
tomcat:8.5
- Butuh package war aplikasi
target/CounterWebApp.war
- Pull image tomcat 8.5
docker pull tomcat:8.5
- Buat Dockerfile
FROM tomcat:8.5
COPY ./CounterWebApp.war /usr/local/tomcat/webapps/
- Build image container aplikasi
docker build -t counter-web-app .
- Lihat hasil build dengan
docker images
- Tes jalankan dengan
docker run -itd -p 8000:8080 --name counter-web-app-1 counter-web-app
- Buka web http://alamat:8000/CounterWebApp
- Buat Dockerfile
FROM openjdk:8-jdk
# siapkan tomcat
ENV CATALINA_HOME /usr/local/tomcat
ENV PATH $CATALINA_HOME/bin:$PATH
RUN mkdir -p "$CATALINA_HOME"
WORKDIR $CATALINA_HOME
RUN wget http://www-eu.apache.org/dist/tomcat/tomcat-8/v8.5.34/bin/apache-tomcat-8.5.34.tar.gz \
&& tar -xf apache-tomcat-8.5.34.tar.gz && mv apache-tomcat-8.5.34/* $CATALINA_HOME && rm apache-tomcat-8.5.34.tar.gz
# siapkan maven
RUN cd /tmp && wget http://www-eu.apache.org/dist/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.zip \
&& unzip apache-maven-3.5.4-bin.zip && rm apache-maven-3.5.4-bin.zip
# compile aplikasi
COPY Maven-WebProject-CounterWebApp.zip /tmp
RUN cd /tmp && unzip Maven-WebProject-CounterWebApp.zip && rm Maven-WebProject-CounterWebApp.zip \
&& cd /tmp/CounterWebApp && ../apache-maven-3.5.4/bin/mvn package
# siapkan aplikasi
RUN cp /tmp/CounterWebApp/target/CounterWebApp.war /usr/local/tomcat/webapps/
# remove app source code
RUN rm -rf /tmp/CounterWebApp
EXPOSE 8080
CMD ["catalina.sh", "run"]
- Build image container aplikasi
docker build -t counter-web-app .
- Lihat hasil build dengan
docker images
- Tes jalankan dengan
docker run -itd -p 8000:8080 --name counter-web-app-1 counter-web-app
- Buka web http://alamat:8000/CounterWebApp
- Buat docker-compose.yml dengan image ci server, version control
- Jalankan dengan
docker-compose up -d
- TODO