Docker学习笔记 包含 XTTP Springboot

Dockerfile

什么是Dockerfile?
Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。
在这里插入图片描述

使用Dockerfile定制镜像

以定值一个nginx镜像为例,首先我们先创建一个Dockerfile文件

touch Dockerfile

在这里插入图片描述之后编辑文件

vi Dockerfile

摁i进入INSERT模式,输入内容
在这里插入图片描述
编辑完成摁Esc后输入 :wq 退出
在Dockerfile文件所在目录执行

docker build -t ${目录名}/${镜像名} .

![在这里插入图片描述](https://img-blog.csdnimg.cn/c1db18d8898a41d9bdcda5d8bd789698.png

可以使用docker images来查看是否添加成功
在这里插入图片描述
接下来启动容器
docker run --name ${容器名称} -d -p ${主机端口}:${容器端口} ${仓库名称}/${镜像名称}
去浏览器 访问路径http://${服务器地址}:${端口号}
在这里插入图片描述

那么对于整个过程中的命令,做以下详解和拓展

在这里插入图片描述

FROM:基础镜像,当前新镜像是基于哪个镜像的,指定一个已经存在的镜像作为模板,第一条必须是from。
MAINTAINER:镜像维护者的姓名和邮箱地址
RUN:· 在 docker build时运行,容器构建时需要运行的命令
在这里插入图片描述

RUN yum -y install vim

在这里插入图片描述
EXPOSE:当前容器对外暴露出的端口
WORKDIR:指定在创建容器后,终端默认登陆的进来工作目录,一个落脚点
COPY:拷贝文件和目录到镜像中
CMD:在docker run 时运行,指定容器启动后的要干的事情
ENV:在构建镜像过程中设置环境变量,之后可以用**${路径名}**来获取

将 docker 中镜像导出到本地以及从本地读取镜像:

导出容器中的镜像

docker save (容器id) < (文件名).tar

从文件中导入到镜像

docker import (文件名).tar (自定义镜像名)

Docker微服务实战

docker 内运行 Springboot 项目

  1. 首先将要运行的 Springboot 项目打成 jar 包, 并拷贝至服务器中
    在这里插入图片描述
  2. 创建 Dockerfile 文件
FROM java:8 
MAINTAINER myname
ADD test8.jar test8.jar 
CMD java -jar test8.jar

注: ADD 后第一个参数是服务器上jar包的名字, 后面的参数是复制后的名字(自定); CMD 后是要执行的语句 (运行 jar ).

  1. 将 Dockerfile 打包镜像
docker build -f <Dockerfile文件路径> -t test8 .
  1. 运行容器
docker run -id -p 8082:8082 test8

注: 外部访问需要配置端口映射

docker 内运行 Springboot XTTP Redis

在pom.xml中规定打包方式
在这里插入图片描述
在右侧 maven --> package
在这里插入图片描述
一般是在项目路径–>target下
在这里插入图片描述在服务器上新建一个文件夹static_demo,将jar包传上服务器。
新建Dockerfile文件

touch Dockerfile

编辑(如果服务器上没有下载vim使用vi即可)

vim Dockerfile

在这里插入图片描述
Esc后输入 :wq 退出

前提:进入Dockerfile文件目录下

在这里插入图片描述
在这里插入图片描述
docker build -t ${镜像名称} .

这个镜像名称是自己起的 镜像中还未存在
注意句末的 .

在这里插入图片描述
docker run -d -p 主机端口 : {主机端口}: 主机端口:{容器端口} ${镜像名称}
在这里插入图片描述
使用docker ps查看是否启动成功
在这里插入图片描述如果上面既没报错,也没有正在启动中,一个可能是内存不足,一个可能项目中的服务器连接错误。

让我们测试一下效果怎么样

在这里插入图片描述在这里插入图片描述ps:本人技术小白,如果有错望指出,共同进步!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值