1. dockerfile 构建镜像步骤
- 编写dockerfile文件
- docker build 构建出镜像
- docker run 运行镜像
- docker push 发布镜像
2. dockerfile 语法
FROM # 从哪个基础镜像开始构建
MAINTAINER # 镜像作者
RUN # 构建镜像需要运行的命令
ADD # 将文件从路径<src> 复制添加到容器路径 <dest>
WORKDIR # 切换工作目录,docker默认工作目录是 /
VOLUME # 挂载的目录,一般用来存放需要保持的数据
EXPOSE # 容器暴露的端口
CMD # 容器启动运行的命令,有多个的话,只有最后一个生效
ENTRYPOINT # 容器启动运行的命令,可以追加
ONBUILD # 让指令延迟执行,延迟到下一个使用FROM的dockerfile建立image时执行,只延迟一次
COPY # 与ADD作用相同,不过ADD会解压文件
ENV # 构建的时候设置环境变量
3. dockerfile 构建与运行springboot镜像
创建Dockerfile文件
FROM java:8 # 以java8镜像作为基础镜像 MAINTAINER zhijiuqian # 作者 WORKDIR app # 指定容器内运行命令的工作目录 ADD iflytek-monitor-0.0.1-SNAPSHOT.jar app.jar # 将jar包拷贝到镜像中,命名为app.jar EXPOSE 7777 # 暴露容器端口为7777,iflytek-monitor-0.0.1-SNAPSHOT.jar应用的启动端口也是7777 ENTRYPOINT ["java","-jar","app.jar"] # 启动命令
将Dockerfile 与 iflytek-monitor-0.0.1-SNAPSHOT.jar 都上传到服务器同一目录
构建镜像
docker build -t iflytek-monitor:v1.0 . # 注意后面有个点;如果Dockerfile 不在当前目录,可用 -f指定路径;
docker ps -a 查看镜像
运行镜像
docker run -d -p 7777:7777 iflytek-monitor:v1.0 # 注意打开服务器安全组的7777端口
本地通过浏览器访问服务器ip:7777就能看到docker启动的springboot 应用啦~
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。