Dockerfile安装jdk和tomcat制作为一个新的镜像(镜像仓库的使用)

1.Dockerfile 常用指令

官方文档:https://docs.docker.com/engine/reference/builder

 2.构建镜像

docker build命令用于使用Dockerfile创建镜像。

1.使用已有的镜像进行创建  如果不会可以先看看我以前的文章

https://blog.csdn.net/weixin_45220510/article/details/129422304?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22129422304%22%2C%22source%22%3A%22weixin_45220510%22%7Dhttps://blog.csdn.net/weixin_45220510/article/details/129422304?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22129422304%22%2C%22source%22%3A%22weixin_45220510%22%7D

# 使用当前目录的 Dockerfile 创建镜像
docker build -t mycentos:7 .

# 通过 -f Dockerfile 文件的位置创建镜像
docker build -f /home/docker/Dockerfile -t mycentos:7 .

2. 我们通过基础镜像centos:7,在该镜像中安装jdktomcat以后将其制作为一个新的镜像mycentos:7

mkdir -p /usr/local/dockerfile

cd /usr/local/dockerfile

vi Dockerfile

FROM centos:7
# 通过镜像标签声明了作者信息
LABEL maintainer="ruoyi.vip"

# 设置工作目录
WORKDIR /usr/local
# 新镜像构建成功以后创建指定目录
RUN mkdir -p /usr/local/java && mkdir -p /usr/local/tomcat
# 拷贝文件到镜像中并解压  (换成自己的jdk和tomcat)
ADD jdk-8u111-linux-x64.tar.gz /usr/local/java
ADD apache-tomcat-8.5.27.tar.gz /usr/local/tomcat
# 暴露容器运行时的 8080 监听端口给外部
EXPOSE 8080
# 设置容器内 JAVA_HOME 环境变量
ENV JAVA_HOME /usr/local/java/jdk1.8.0_111
ENV PATH $PATH:$JAVA_HOME/bin
# 启动容器时启动 tomcat
CMD ["/usr/local/tomcat/apache-tomcat-8.5.27/bin/catalina.sh", "run"]
在上方jdk和tomcat文件目录下 构建镜像(pd:也就是jdk和tomcat压缩包在一个目录下)

docker build -f /usr/local/dockerfile/Dockerfile -t mycentos:test .
最后这点 . 很重要 前方还有个空格 必须加

3.启动镜像 

docker run -di --name mycentos -p 8080:8080 mycentos:test

进入容器
docker exec -it mycentos7 /bin/bash

 4.镜像构建历史

docker history mycentos:7

3.镜像仓库

我们使用的镜像都是从DockerHub公共仓库拉取的,我们也学习了如何制作自己的镜像,但是通过tar包的方式实现镜像的备份恢复迁移对于团队协作开发并不是特别友好,我们也可以将镜像推送至DockerHub仓库方便使用。

温馨提示:如果构建的镜像内携带了项目数据,建议还是使用私有仓库比较好。

官网:https://hub.docker.com

1.注册账户

登录账号

通过docker login命令输入账号密码登录DockerHub

推送镜像至仓库

为了方便测试,我们将hello-world镜像拉取至本地,然后再上传至DockerHub仓库中。

docker tag hello-world:latest ruoyivip/test-hello-world:1.0.0
docker push ruoyivip/test-hello-world:1.0.0

拉取镜像

通过docker pull ruoyivip/test-hello-world:1.0.0测试镜像是否可以拉取。

退出账号

通过docker logout退出账号

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值