当前位置: 首页 > news >正文

dockerfile文件书写

1.dockerfile构建nginx镜像

1.1书写dockerfile文件

mkdir nginx  #创建nginx目录
cd nginx
vim dockerfile # 修改文件FROM centos  # 基础镜像,默认最新的centos8操作系统
MAINTAINER xianchao # 指定镜像的作者信息
RUN rm -rf /etc/yum.repos.d/* # centos8默认的yum源不可以使用,需要更换yum源
COPY Centos-vault-8.5.2111.repo /etc/yum.repos.d/ # 将nginx目录下的文件拷贝到镜像中
RUN yum install wget -y # 下载wget命令
RUN yum install nginx -y # 下载nginx服务
COPY index.html /usr/share/nginx/html/ # 将nginx目录下的文件拷贝到镜像中
EXPOSE 80 # 暴露端口
ENTRYPOINT ["/usr/sbin/nginx","-g","daemon off;"] # 执行命令,开启nginx服务

1.2准备nginx目录下的文件

  1. 准备yum源
  2. 准备index.html文件
vim index.html<html>
<head>
<title>page added to dockerfile</title>
</head>
<body>
<h1>Hello ,My Name is tiandameng </h1>
</body>
</html>

1.3开始制作镜像

docker build -t dameng/nginx:v1 . --load

在这里插入图片描述

1.4查看镜像

docker images | grep nginx

在这里插入图片描述

1.5运行镜像

docker  run -d --name nginx -p 80  dameng/nginx:v1

在这里插入图片描述

2.dockerfile构建tomcat镜像

2.1书写dockerfile文件

运行tomcat需要jdk环境

mkdir tomcat  #创建tomcat目录
cd tomcat
vim dockerfile # 修改文件FROM centos    # 基础镜像,默认最新的centos8操作系统
MAINTAINER tian   # 指定镜像的作者信息
RUN rm -rf  /etc/yum.repos.d/*    # centos8默认的yum源不可以使用,需要更换yum源
COPY Centos-vault-8.5.2111.repo /etc/yum.repos.d/    # 将tomcat目录下的文件拷贝到镜像中
RUN yum -y install wget     # 下载wget命令
ADD  apache-tomcat-8.0.26.tar.gz  /usr/local    # 将tomcat压缩包解压到/usr/local目录下
ADD  jdk-8u45-linux-x64.rpm  /usr/local     # 将jdk的rpm包放到镜像中的/usr/local中
RUN  cd /usr/local && rpm -ivh jdk-8u45-linux-x64.rpm     # 进入到/usr/local目录下,运行jdk的rpm包
RUN mv /usr/local/apache-tomcat-8.0.26   /usr/local/tomcat     # 修改tomcat的名称
ENTRYPOINT /usr/local/tomcat/bin/startup.sh && tail -F /usr/local/tomcat/logs/catalina.out     # 运行tomcat服务
EXPOSE 8080    #暴露8080端口

2.2准备tomcat目录下的文件

  1. 准备tomcat的tar包
  2. 准备jdk的rpm包
  3. 准备yum源

2.3开始制作镜像

docker  build -t dameng/tomcat:v1 . --load

在这里插入图片描述

2.4查看镜像

docker images | grep tomcat

在这里插入图片描述

2.5运行镜像

docker run -d -p 8080 --name tomcat dameng/tomcat:v1

在这里插入图片描述

http://www.lryc.cn/news/303163.html

相关文章:

  • 蓝桥杯-整数删除
  • 以程序员的视角,看前后端分离的是否必要?
  • Linux:sed进阶(12)
  • Linux命令-builtin命令(执行bash内建命令)
  • HTML的特殊字符
  • 内核移植学习
  • Mysql 两个日期相减得到指定的格式数据
  • 第六十四天 服务攻防-框架安全CVE复现Apache shiroApache Solr
  • JavaScript 设计模式之享元模式
  • 利用故事推动企业变革:如何提升数据分析技能
  • Python内置函数04——enumerate
  • unity学习(28)——登录功能
  • Mac公证脚本-Web公证方式
  • 让你专注工作的思维模板,进入每天的专注生活
  • Java之获取Nginx代理之后的客户端IP
  • 【springboot+vue项目(十五)】基于Oauth2的SSO单点登录(二)vue-element-admin框架改造整合Oauth2.0
  • 音频的传输链路与延迟优化点
  • 【51单片机】直流电机驱动(PWM)(江科大)
  • 腾讯文档(excel也一样)设置单元格的自动行高列宽
  • vue-router 提供的几种导航守卫
  • Element UI 组件的安装及使用
  • 网站架构演变、LNP+Mariadb数据库分离、Web服务器集群、Keepalived高可用
  • 设计模式(七):策略模式(行为型模式)
  • 人工智能|深度学习——基于对抗网络的室内定位系统
  • MySQL的配置文件my.cnf正常的配置项目
  • 小程序API能力集成指南——界面导航栏API汇总
  • onlyoffice基础环境搭建+部署+demo可直接运行 最简单的入门
  • ubuntu 22.04 图文安装
  • Dockerfile文件中只指定挂载点会发生什么?
  • 详解 leetcode_078. 合并K个升序链表.小顶堆实现