docker容器化之dockerfile 2
1、dockerfile环境部署的基本流程
(1)开发编写完代码进行自测;
(2)编写Dockerfile来构建镜像;
(3)执行编写的Dockerfile的文件;
(4)执行Dockerfile文件成功后,也就是构建镜像成功;
(5)使用docker images,就可以查看到构建成功的镜像信息;
(6)把镜像导出,发送给测试同学;
(7)测试再导入,使用docker run来运行这个镜像,运行成功后,环境部署OK;
(8)开始测试验证。
2、演示开发行为
(1)mvn clean 清空命令,现象就是target的文件夹就会消失;
(2)mvn package 把服务(应用程序)打包成jar文件,现象就是在项目的目录下出现了target的文件夹,打包成功的jar实际就是在target的文件夹里面。
运行结果如下:
(3)java -jar xxx.jar.(jar的文件名) 运行命令。
运行结果如下:
3、演示测试行为
(1)在d盘的learndocker文件夹中创建Dockerfile文件,Dockerfile的文件内容如下:
FROM centos:7.8.2003
FROM java:8
MAINTAINER yl
#复制文件到容器目录
COPY app-0.0.1-SNAPSHOT.jar /opt
#切换目录
WORKDIR /opt
#启动服务
EXPOSE 8081
CMD ["java","-jar","app-0.0.1-SNAPSHOT.jar"]
(2)下载架包(jar)文件即app-0.0.1-SNAPSHOT.jar文件,将其下载到与dockerfile文件一致的文件夹下;
(3)打开控制台,进入储存Dockerfile和app-0.0.1-SNAPSHOT.jar文件的文件夹;
(4)构建镜像,命令如下: docker build -t app(镜像名,自定义) -f Dockerfile .
(5)运行镜像,命令如下:docker run -it --rm -p 8081:8081 yld
(6)在浏览器里输入网址,验证结果。
http://localhost:8081/testDev
http://localhost:8081/hello
(其中localhost==127.0.0.1指的是自己所在的计算机本身,在windows中,它是127.0.0.1的别名。)
(7)重新打开控制台,输入docker ps -a查询容器ID,然后输入docker stop 容器ID停止运行。
4、docker常用命令
(1)运行jar的命令:java -jar XX.jar( jar文件名);
(2)查看所有端口命令:netstat -ano ;
(3)A.netstat -ano | findstr "被查询的端口" 根据端口查询到应用程序的pid信息;
B.tasklist | findstr "pid" 根据pid信息查询到具体的应用程序。
(4)查看版本命令: docker wersion ;
(5)计算机常用重要端口
80:web默认端口;
443:安全协议;
25 :邮件服务;
22:ssh服务端口。