闲着没事,学学了一下docker的玩法,写个笔记备忘。
就是使用Dockerfile的形式来将自己的应用打包成镜像,然后运行。
创建web应用
略
如果这都 不会弄回去学web吧
我这里是将应用打包成war包,在Tomcat上运行。
将web应用打包
自己怎么舒服怎么来,我是用的maven的形式来打包的
插件配不配其实都行,如果不配的话会使用默认的插件来打包。关键是指定web.xml文件的地址,可能是因为我项目结构的问题,如果不指定web.xml文件位置,无法打包。
<!-- 指定打成war包 -->
<packaging>war</packaging>
<build>
<plugins>
<!--下面是将应用打包发布需要增加的插件-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.6</version>
<configuration>
<webXml>web/WEB-INF/web.xml</webXml>
</configuration>
</plugin>
</plugins>
</build>
创建Dockerfile文件
这个文件就是来指定,打包的镜像长啥样的。
具体每个命令是啥意思看官方文档:传送门
# 指定使用的基础镜像
FROM tomcat:latest
# 将项目的war包解压并放入容器的tomcat的webapps里面
# 使用COPY命令也行
ADD /target/webDemo-1.0-SNAPSHOT.war /usr/local/tomcat/webapps/
# 容器的启动命令
CMD ["catalina.sh", "run"]
打包镜像
一行指令,需要注意的是:镜像名称不能有大写字母,为啥不知道。
另外,最后在指令末尾有一个点,别忘了
docker build -t 'webdemo:v1' .
打包完OK了,输入指令运行就行了