ํฐ์คํ ๋ฆฌ ๋ทฐ
[ Docker ] ๋์ปค๋ก ํฐ์ผ(์ปจํ ์ด๋) ์คํํ๊ธฐ
Kithub 2023. 2. 5. 16:23๋์ปค์ ๊ธฐ๋ณธ์ ์ธ ํ๊ฒฝ ๊ตฌ์ฑ์ ๋์ด ์๋ค ๊ฐ์ ํฉ๋๋ค.
์์ฑ์ ํ๊ฒฝ๊ตฌ์ฑ
win10
wsl2 - ubuntu
1. ๋์ปค๋ก ํฐ์ผ ์ด๋ฏธ์ง ์ฐพ๊ธฐ
ํฐ์ผ์ ๊ตฌ์ฑํ๊ธฐ ์ํด ์ฐ๋ฆฌ๋ ํฐ์ผ ์ด๋ฏธ์ง๋ฅผ ๋ด๋ ค๋ฐ์์ผ ํฉ๋๋ค. ๊ทธ์ ์ ๋์ปคํ๋ธ์ ์ฌ๋ผ์ ์๋ ํฐ์ผ ์ด๋ฏธ์ง๋ค์ ๋ชฉ๋ก์ ํ์ธํด ๋ณผ ์ ์์ต๋๋ค. search ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํด ๋ชฉ๋ก์ ๊ฒ์ ํ๊ฒ ๋๋ฉด ์ด๋ฏธ์ง์ ์ด๋ฆ, ์ค๋ช , ํ์ (๋ณ) ๋ฑ์ ํ์ธ ํ ์ ์์ต๋๋ค.
docker search [OPTIONS] TERM
docker search ๋ช ๋ น์ด ๊ณต์๋ฌธ์
sintae@DESKTOP-JAQ684D:~$ docker search tomcat
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
tomcat Apache Tomcat is an open source implementati… 3478 [OK]
tomee Apache TomEE is an all-Apache Java EE certif… 102 [OK]
bitnami/tomcat Bitnami Tomcat Docker Image 47 [OK]
arm64v8/tomcat Apache Tomcat is an open source implementati… 8
rightctrl/tomcat CentOS , Oracle Java, tomcat application ssl… 7 [OK]
eclipse/rdf4j-workbench Dockerfile for Eclipse RDF4J Server and Work… 6
amd64/tomcat Apache Tomcat is an open source implementati… 6
jelastic/tomcat An image of the Tomcat Java application serv… 4
tomcat2111/pisignage-server PiSignage Server 3 [OK]
oobsri/tomcat8 Testing CI Jobs with different names. 2
cfje/tomcat-resource Tomcat Concourse Resource 2
eclipse/alpine_jdk8 Based on Alpine 3.3. JDK 1.8, Maven 3.3.9, T… 1 [OK]
ppc64le/tomcat Apache Tomcat is an open source implementati… 1
chenyufeng/tomcat-centos tomcatๅบไบcentos6็้ๅ 1 [OK]
appsvc/tomcat 1
misolims/miso-base MySQL 5.7 Database and Tomcat 8 Server neede… 0
tomcatengineering/pg_backup_rotated Clone of martianrock/pg_backup_rotated but w… 0
tomcat2111/papercut-mf PaperCut MF Application Server 0
softwareplant/tomcat Tomcat images for jira-cloud testing 0 [OK]
semoss/docker-tomcat Tomcat, Java, Maven, and Git on top of debian 0 [OK]
secoresearch/tomcat-varnish Tomcat and Varnish 5.0 0 [OK]
eclipse/hadoop-dev Ubuntu 14.04, Maven 3.3.9, JDK8, Tomcat 8 0 [OK]
s390x/tomcat Apache Tomcat is an open source implementati… 0
wnprcehr/tomcat 0
tomcat0823/auto1 0
์ฐ๋ฆฌ๋ ๊ฐ์ฅ ์์์ ์๋ tomcat์ด๋ผ๋ ์ด๋ฆ์ ์ด๋ฏธ์ง๋ฅผ ํ๋ฒ ๋ฐ์ ๋ณด๋๋ก ํฉ๋๋ค.
2. ํฐ์ผ ์ด๋ฏธ์ง ๋ด๋ ค๋ฐ๊ธฐ
์ํ๋ ์ด๋ฏธ์ง๋ฅผ ๋ด๋ ค ๋ฐ๊ธฐ ์ํด์๋ pull ์ด๋ผ๋ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํฉ๋๋ค. git์ ์ฌ์ฉ ํ๋ ๋ถ๋ค์ด๋ผ๋ฉด ์ต์ํ ๋ช ๋ น์ด ์ผํ ๋ฐ์. ๋์ปค ํ๋ธ ๋ํ pull๋ช ๋ น์ด๋ก ์ํ๋ ์ด๋ฏธ์ง๋ฅผ ๋ด๋ ค๋ฐ์ ์ ์์ต๋๋ค.
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
docker pull ๋ช ๋ น์ด ๊ณต์๋ฌธ์
sintae@DESKTOP-JAQ684D:~$ docker pull tomcat
Using default tag: latest
latest: Pulling from library/tomcat
10ac4908093d: Pull complete
6df15e605e38: Pull complete
2db012dd504c: Pull complete
8fa912900627: Pull complete
f8fe20946c04: Pull complete
8093daf900d2: Pull complete
49c22a329043: Pull complete
Digest: sha256:9e2525bd79c5386c9bd9ba56fe450263d7af605e41db9fead44e1969379b588a
Status: Downloaded newer image for tomcat:latest
docker.io/library/tomcat:latest
๋์ปค๋ ๊ธฐ๋ณธ์ ์ผ๋ก ๋ฒ์ ๋ช ์๊ฐ ์๋ค๋ฉด ์ต์ ๋ฒ์ ์ ๋ด๋ ค๋ฐ์ต๋๋ค.
ํน์ฌ๋, '๋ 9.0๋ฒ์ ์ด ํ์ํ๋ฐ์ ! ' ํ์ ๋ค๋ฉด
์๋ ํ์ด์ง์์ ๋ฒ์ ๋ณ๋ก ๋ด๋ ค๋ฐ์ ์ ์๊ฒ ์ ๊ณตํ๊ณ ์์ผ๋ ์ํ์๋ ๋ถ๋ค์ ํ๋ฒ ๋๋ฌ๋ณด์๋๊ฑธ ์ถ์ฒ๋๋ฆฝ๋๋ค.
https://hub.docker.com/_/tomcat/tags
tomcat Tags | Docker Hub
tomcat •• Apache Tomcat is an open source implementation of the Java Servlet and JavaServer Pages technologies
hub.docker.com
์ ์ด์ ๋ด๊ฐ ๋ฐ์ ์ด๋ฏธ์ง๊ฐ ์ ๋๋ก ๋ด๋ ค๋ฐ์ ์ก๋์ง ํ์ธ์ ํด๋ด์ผ๊ฒ ์ง์?
images ๋ช ๋ น์ด๋ฅผ ํตํด ๋ด๊ฐ ๋ด๋ ค๋ฐ์ ์ด๋ฏธ์ง๋ฅผ ํ์ธํด ๋ด ์๋ค.
docker images [OPTIONS] [REPOSITORY[:TAG]]
docker images ๋ช ๋ น์ด ๊ณต์๋ฌธ์
sintae@DESKTOP-JAQ684D:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
tomcat latest 2362f0cdbf14 7 days ago 474MB
- REPOSITORY : ์ด๋ฏธ์ง ์ด๋ฆ
- TAG : ๋ฒ์
- IMAGE ID : ์ด๋ฏธ์ง ID
- SIZE : ์ด๋ฏธ์ง ํฌ๊ธฐ
3. ํฐ์ผ(์ปจํ ์ด๋) ์คํ
์ด์ ํฐ์ผ์ ์คํ ํด๋ด ์๋ค.
์ฐ๋ฆฌ๊ฐ ๋ฐ์ ์ด๋ฏธ์ง๋ฅผ ๊ฐ์ง๊ณ ํ๋์ ํ๋ก์ธ์ค(์ปจํ ์ด๋)๋ฅผ ์ฌ๋ฆฌ๊ธฐ ์ํด์ run ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํฉ๋๋ค.
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
docker run ๋ช ๋ น์ด ๊ณต์๋ฌธ์
docker run -p 8085:8080 [์คํํ ์ด๋ฏธ์ง ID]
- -p : 8085 ํฌํธ๋ก ์ ์ํด์ 8080์ผ๋ก ์ฐ๊ฒฐํ๋๋ก ์ค์
sintae@DESKTOP-JAQ684D:~$ docker run -p 8085:8080 2362f0cdbf14
08-Feb-2023 13:23:18.369 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version name: Apache Tomcat/10.1.5
08-Feb-2023 13:23:18.392 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built: Jan 9 2023 19:52:50 UTC
08-Feb-2023 13:23:18.393 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version number: 10.1.5.0
08-Feb-2023 13:23:18.394 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name: Linux
08-Feb-2023 13:23:18.395 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version: 5.10.16.3-microsoft-standard-WSL2
08-Feb-2023 13:23:18.396 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture: amd64
08-Feb-2023 13:23:18.396 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home: /opt/java/openjdk
08-Feb-2023 13:23:18.397 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version: 17.0.6+10
08-Feb-2023 13:23:18.398 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor: Eclipse Adoptium
08-Feb-2023 13:23:18.399 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE: /usr/local/tomcat
08-Feb-2023 13:23:18.401 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME: /usr/local/tomcat
08-Feb-2023 13:23:18.447 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties
08-Feb-2023 13:23:18.449 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
08-Feb-2023 13:23:18.451 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
08-Feb-2023 13:23:18.452 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
08-Feb-2023 13:23:18.452 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dorg.apache.catalina.security.SecurityListener.UMASK=0027
08-Feb-2023 13:23:18.453 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.lang=ALL-UNNAMED
08-Feb-2023 13:23:18.453 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.io=ALL-UNNAMED
08-Feb-2023 13:23:18.453 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.util=ALL-UNNAMED
08-Feb-2023 13:23:18.454 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.util.concurrent=ALL-UNNAMED
08-Feb-2023 13:23:18.454 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
08-Feb-2023 13:23:18.454 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/usr/local/tomcat
08-Feb-2023 13:23:18.454 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/usr/local/tomcat
08-Feb-2023 13:23:18.455 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/usr/local/tomcat/temp
08-Feb-2023 13:23:18.469 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded Apache Tomcat Native library [2.0.2] using APR version [1.7.0].
08-Feb-2023 13:23:18.481 INFO [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL successfully initialized [OpenSSL 3.0.2 15 Mar 2022]
08-Feb-2023 13:23:19.514 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"]
08-Feb-2023 13:23:19.633 INFO [main] org.apache.catalina.startup.Catalina.load Server initialization in [1967] milliseconds
08-Feb-2023 13:23:19.800 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Catalina]
08-Feb-2023 13:23:19.801 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/10.1.5]
08-Feb-2023 13:23:19.849 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
08-Feb-2023 13:23:19.905 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in [271] milliseconds
์ฐ๋ฆฌ๋ run ๋ช ๋ น์ด ํ๋๋ก ํฐ์ผ์ ๊ตฌ๋ ํ๋๋ฐ ์ฑ๊ณต ํ์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ , ๋ก๊ทธ๋ฅผ ์ ์ ๋ค์ฌ๋ค ๋ณด๋ฉด jdk๋ ํจ๊ป ์ค์น๋์ด ์๋ค๋ ๊ฒ๋ ํ์ธ ํ ์ ์์ต๋๋ค. ์ฐ๋ฆฌ๊ฐ ์ด ์์์ ๋ค์ด๋ก๋ํ tomcat ์ด๋ฏธ์ง์ ๋น๋ ๊ตฌ์ฑ์ด JDK๋ฅผ ํฌํจํ๊ณ ์๊ธฐ ๋๋ฌธ์, ํฐ์ผ ์คํ์ ์ฐ๋ฆฌ๋ ๋ณ๋์ JDK์ค์น ์์ด ํฐ์ผ์ ๊ตฌ์ฑํ ์ ์์๋ ๊ฒ์ ๋๋ค.
์ค์ dockerfile์ ๋ด์ฉ์ ๋ณด๋ฉด 17-jdk๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๊ณ ์๋ค๋ ๊ฒ์ ์ ์ ์์ต๋๋ค.
FROM eclipse-temurin:17-jdk-jammy
ENV CATALINA_HOME /usr/local/tomcat
ENV PATH $CATALINA_HOME/bin:$PATH
RUN mkdir -p "$CATALINA_HOME"
WORKDIR $CATALINA_HOME
.
.
(์๋ต)
4. ํฐ์ผ(์ปจํ ์ด๋) ์ ์
ํฐ์ผ ๊ตฌ๋์ด ์ํํ ๋์๋์ง ํ์ธ์ ํด๋ณผ ์ฐจ๋ก์ ๋๋ค. ์ฐ๋ฆฌ๋ ps๋ช ๋ น์ด๋ฅผ ํตํด ํฐ์ผ์ ๊ตฌ๋์ด ์ ์์ ์ผ๋ก ๋์๋์ง ํ์ธํด ๋ณด๊ฒ ์ต๋๋ค. ps๋ ๋์ปค๊ฐ ์์ฑํ ์ปจํ ์ด๋๋ค์ ๋ชฉ๋ก๊ณผ ์ํ๋ฅผ ํ์ธ ํ ์ ์๋ ๋ช ๋ น์ด ์ ๋๋ค.
docker ps [OPTIONS]
docker ps ๋ช ๋ น์ด ๊ณต์๋ฌธ์
sintae@DESKTOP-JAQ684D:~$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
76be015094f2 2362f0cdbf14 "catalina.sh run" 7 minutes ago Up 7 minutes 0.0.0.0:8085->8080/tcp hungry_johnson
- CONTAINER ID : ์ปจํ ์ด๋ ID
- IMAGE : ์คํ์ ์ฌ์ฉํ ์ด๋ฏธ์ง ID
- COMMAND : ์คํ
- STATUS : ์ปจํ ์ด๋์ ์ํ
- PORTS : ํฌํธํฌ์๋ฉ
- NAME : ์ปจํ ์ด๋ ์ด๋ฆ
๋ช ๋ น์ด ์คํ ๊ฒฐ๊ณผ ํฐ์ผ ์ปจํ ์ด๋๊ฐ ์ ์์ ์ผ๋ก ๊ตฌ๋๋์ด ์๊ณ ์๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค.
์ด์ ์์์ ์ก์์ฃผ์๋ ํฌํธํฌ์๋ฉ ํฌํธ(8085)๋ฅผ ํตํด ์ ์์ ํด๋ด ์๋ค.
์ ์์ ์ผ๋ก ์ฐ๋ฆฌ์ ๊ณ ์์ด๊ฐ ํ์ด์ง์ ๋ํ๋ฌ๋ค๋ฉด ํ์ฐฌ ๋ฐ์๋ก ๋ง์น๊ฒ ์ต๋๋ค.

* ํฐ์ผ ์ ์์ 404๊ฐ ๋ฌ๋ค๋ฉด ๋ค์ ์ฒ๋ผ ์งํํด์ฃผ์ธ์ !
sintae@DESKTOP-JAQ684D:~$ docker exec -it 76be015094f2 /bin/bash
root@76be015094f2:/usr/local/tomcat# mv webapps webapps2
root@76be015094f2:/usr/local/tomcat# mv webapps.dist/ webapps
root@76be015094f2:/usr/local/tomcat# exit
exit
'โ Tools > โ Docker' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ Docker ] ๋์ปค๋ก ํฐ์ผ ๋ฐฐํฌ(war)ํ๊ธฐ (0) | 2023.02.09 |
---|