本文主要包含docker容器挂载,docker,宿主主机目录等服务器相关知识,肖哥哥 希望可以进行参考
有一项重要的参数 -v 目录挂载,就是让容器内部目录和宿主主机目录关联起来,这样就可以直接操作宿主主机目录而不用再操作具体容器了
比如在2中,我们要发布一个war包,是通过
sudo docker cp demo.war tomcat_xiao:/usr/local/tomcat/webapps
来发布的,有没有更快捷的方式呢?
肯定有, 没有 我就不会在这里写这些玩意儿了
sudo docker run -p 8822:8080 --name tomcat_xiao_volume -v /home/xiaochangwei/test:/usr/local/tomcat/webapps xiaochangwei/tomcat:v1
-p 不解释
--name 不解释
-v /home/xiaochangwei/test:/usr/local/tomcat/webapps 就是将宿主主机目录和容器目录建立映射关系,冒号前为宿主主机目录,冒号后为容器对应目录
执行上面的命令启动,这次启动就和上一篇文章中的启动日志有点差异了:差异就在容器启动时,tomcat加载了我们映射的宿主主机目录中的war包
xiaochangwei@ubuntu:~/test$ sudo docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES xiaochangwei@ubuntu:~/test$ sudo docker images REPOSITORY TAG IMAGE ID CREATED SIZE xiaochangwei/tomcat v1 62cedd29ce8f About an hour ago 505MB xiaochangwei/nginx v1.0 9f2c1a649a75 2 hours ago 108MB nginx latest 3f8a4339aadd 9 days ago 108MB ubuntu 16.04 00fd29ccc6f1 3 weeks ago 111MB xiaochangwei@ubuntu:~/test$ xiaochangwei@ubuntu:~/test$ pwd /home/xiaochangwei/test xiaochangwei@ubuntu:~/test$ ls -l total 14180 -rw-rw-r-- 1 xiaochangwei xiaochangwei 14501238 Dec 19 23:29 demo.war -rw-rw-r-- 1 xiaochangwei xiaochangwei 551 Jan 4 18:18 Dockerfile drwxr-xr-x 8 xiaochangwei xiaochangwei 4096 Dec 12 2016 jdk drwxrwxr-x 6 xiaochangwei xiaochangwei 4096 Dec 20 21:51 maven drwxrwxr-x 9 xiaochangwei xiaochangwei 4096 Dec 20 18:28 tomcat xiaochangwei@ubuntu:~/test$ sudo docker run -p 8822:8080 --name tomcat_xiao_volume -v /home/xiaochangwei/test:/usr/local/tomcat/webapps xiaochangwei/tomcat:v1 Tomcat started. Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=64M; support was removed in 8.0 Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=512M; support was removed in 8.0 05-Jan-2018 08:32:20.580 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version: Apache Tomcat/8.5.24 05-Jan-2018 08:32:20.641 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built: Nov 27 2017 13:05:30 UTC 05-Jan-2018 08:32:20.641 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server number: 8.5.24.0 05-Jan-2018 08:32:20.641 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name: Linux 05-Jan-2018 08:32:20.641 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version: 4.10.0-28-generic 05-Jan-2018 08:32:20.641 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture: amd64 05-Jan-2018 08:32:20.641 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home: /usr/local/jdk/jre 05-Jan-2018 08:32:20.642 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version: 1.8.0_121-b13 05-Jan-2018 08:32:20.642 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor: Oracle Corporation 05-Jan-2018 08:32:20.642 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE: /usr/local/tomcat 05-Jan-2018 08:32:20.642 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME: /usr/local/tomcat 05-Jan-2018 08:32:20.642 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties 05-Jan-2018 08:32:20.648 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 05-Jan-2018 08:32:20.648 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048 05-Jan-2018 08:32:20.648 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources 05-Jan-2018 08:32:20.648 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xms128m 05-Jan-2018 08:32:20.648 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xmx1024m 05-Jan-2018 08:32:20.648 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:PermSize=64M 05-Jan-2018 08:32:20.648 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:MaxPermSize=512M 05-Jan-2018 08:32:20.648 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dignore.endorsed.dirs= 05-Jan-2018 08:32:20.649 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/usr/local/tomcat 05-Jan-2018 08:32:20.649 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/usr/local/tomcat 05-Jan-2018 08:32:20.649 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/usr/local/tomcat/temp 05-Jan-2018 08:32:20.649 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib] 05-Jan-2018 08:32:21.293 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"] 05-Jan-2018 08:32:21.358 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read 05-Jan-2018 08:32:21.370 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-nio-8009"] 05-Jan-2018 08:32:21.374 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read 05-Jan-2018 08:32:21.375 INFO [main] org.apache.catalina.startup.Catalina.load Initialization processed in 2178 ms 05-Jan-2018 08:32:21.432 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Catalina] 05-Jan-2018 08:32:21.432 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/8.5.24 05-Jan-2018 08:32:21.513 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive [/usr/local/tomcat/webapps/demo.war] 05-Jan-2018 08:32:24.342 INFO [localhost-startStop-1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time. 08:32:24.799 [localhost-startStop-1] DEBUG org.springframework.web.context.support.StandardServletEnvironment - Adding PropertySource 'servletConfigInitParams' with lowest search precedence 08:32:24.813 [localhost-startStop-1] DEBUG org.springframework.web.context.support.StandardServletEnvironment - Adding PropertySource 'servletContextInitParams' with lowest search precedence 08:32:24.832 [localhost-startStop-1] DEBUG org.springframework.web.context.support.StandardServletEnvironment - Adding PropertySource 'jndiProperties' with lowest search precedence 08:32:24.832 [localhost-startStop-1] DEBUG org.springframework.web.context.support.StandardServletEnvironment - Adding PropertySource 'systemPro

