docker Dockerfile实战
Dockerfile实战
基础pm2 Dockerfile
keymetrics/pm2:8-alpine
keymetrics/pm2:12-alpine
FROM pm2:8-alpine
COPY ./Shanghai /etc/localtime
RUN mkdir -p /data/logs/pm2 && apk add curl wget
pm2 node Dockerfile
FROM harbor.qing.cn/base/pm2:8-alpine-v2
#RUN apk add --no-cache tzdata
#ENV TZ Asia/Shanghai
#/usr/share/zoneinfo/Asia/Shanghai /etc/localtime
#RUN dpkg-reconfigure -f noninteractive tzdata
COPY . /usr/local/src
#RUN echo 'Asia/Shanghai' >/etc/timezone
WORKDIR /usr/local/src
#RUN mkdir /data/logs/pm2 -p
EXPOSE docker_port
CMD pm2-docker start ecosystem.config.js --env test
nginx Dockerfile
FROM nginx:1.14.0
COPY ./Shanghai /etc/localtime
RUN mkdir -p /usr/local/nginx/html && mkdir -p /data/wwwlogs && chown nginx. /data/wwwlogs -R && apt-get update && apt-get install -y curl wget telnet vim procps unzip
COPY index.html /usr/local/nginx/html/
COPY nginx.conf /etc/nginx/nginx.conf
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
nginx php-fpm Dockerfile
java Dockerfile
FROM docker-registry.qing.com/base/tomcat_base:v1
RUN mkdir -p /data/appdatas
RUN mkdir -p /data/appdatas/wcc
RUN mkdir -p /data/log/tomcat
COPY ./logging.properties /usr/local/tomcat/conf/
COPY ./server.xml /usr/local/tomcat/conf/
COPY ./catalina.sh /usr/local/tomcat/bin/
COPY ./ROOT.war /usr/local/tomcat/webapps/
COPY ./config_env.ini /data/appdatas/wcc/
WORKDIR /usr/local/tomcat
EXPOSE 8080
jdk Dockerfile
FROM centos:7
ADD jdk1.8.0_181.tar /usr/local/
ENV JAVA_HOME /usr/local/jdk1.8.0_181
ENV JRE_HOME ${JAVA_HOME}/jre
ENV CLASSPATH ${JAVA_HOME}/lib:${JRE_HOME}/lib
ENV PATH $PATH:$JAVA_HOME/bin
** 业务 Dockerfile **
FROM xxx.qing/base/jdk:1.8-v2
ENV app_jar irsapi.jar
ENV app_port 80
RUN mkdir -p /opt/{app,logs,settings}
WORKDIR /opt/app
ADD irs-server/target/${app_jar} /opt/app/${app_jar}
EXPOSE ${app_port}
##CMD java -Djava.security.egd=file:/dev/./urandom -jar ${app_jar} --spring.profiles.active=test
CMD java -jar -Duser.timezone=GMT+08 ${app_jar}
docker Dockerfile实战的更多相关文章
- Docker下实战zabbix三部曲之三:自定义监控项
通过上一章<Docker下实战zabbix三部曲之二:监控其他机器>的实战,我们了解了对机器的监控是通过在机器上安装zabbix agent来完成的,zabbix agent连接上zabb ...
- Docker - Dockerfile - 常见命令简介
概述 感觉是个 比较重要的东西 有个疑问 我是先讲 docker build 还是 先讲 Dockerfile 穿插讲 docker build 最基本的东西 原理 -t -f docker file ...
- Docker镜像实战(ssh、systemctl、nginx、tomcat、mysql)
Docker镜像实战 1.构建ssh镜像 2.构建systemctl 镜像 3.构建nginx镜像 4.构建tomcat镜像 5.构建mysql镜像 1.构建ssh镜像: 创建镜像目录 mkdir / ...
- Docker 监控实战
如今,越来越多的公司开始使用 Docker 了,现在来给大家看几组数据: 2 / 3 的公司在尝试了 Docker 后最终使用了它 也就是说 Docker 的转化率达到了 67%,而转化市场也控制在 ...
- Docker入门实战_正版电子书在线阅读_百度阅读
Docker入门实战_正版电子书在线阅读_百度阅读 Docker入门实战
- docker Dockerfile指令ADD和COPY的区别,添加目录方法
docker Dockerfile指令ADD和COPY的区别,添加目录方法 ADD指令的功能是将主机构建环境(上下文)目录中的文件和目录.以及一个URL标记的文件 拷贝到镜像中.其格式是: ADD 源 ...
- Docker虚拟化实战学习——基础篇(转)
Docker虚拟化实战学习——基础篇 2018年05月26日 02:17:24 北纬34度停留 阅读数:773更多 个人分类: Docker Docker虚拟化实战和企业案例演练 深入剖析虚拟化技 ...
- Docker swarm 实战-部署wordpress
Docker swarm 实战-部署wordpress 创建一个overlay的网络 docker network create -d overlay demo 6imq8da3vcwvj2n499k ...
- Docker Dockerfile简述
原文地址:https://www.cnblogs.com/cuimiemie/p/6442677.html 作用 Dockerfile的内容是一坨可以执行的代码(或者说是指令)(docker的DSL) ...
随机推荐
- Golang 入门 : channel(通道)
笔者在<Golang 入门 : 竞争条件>一文中介绍了 Golang 并发编程中需要面对的竞争条件.本文我们就介绍如何使用 Golang 提供的 channel(通道) 消除竞争条件. C ...
- HTML连载48-清除浮动的其中两种方式
一.清除浮动的方式一 给前面一个父元素设置高度,注意:企业开发中能不写高度就不写高度 <!DOCTYPE html> <html lang="en"> & ...
- 不为人知的网络编程(九):理论联系实际,全方位深入理解DNS
本文原作者:selfboot,博客地址:selfboot.cn,Github地址:github.com/selfboot,感谢原作者的技术分享. 1.引言 对于 DNS(Domain Name Sys ...
- ubuntu 库依赖问题
安装apt-file, 可以查找各种库依赖的文件,或查找某个app的依赖库: sudo apt install apt-file apt-file update apt-flie search rpc ...
- json递归查询
主体: class json_search(): '''递归查询依赖key''' def search_key(self,data,key): self.data = data self.key_va ...
- 学习UML类图
在类图中一共包含以下几种模型元素,分别是:类(class).接口(interface)以及类之间的关系. 1.类(class) 在面向对象编程中,类是对现象世界中一组具有相同特征的物体的抽象. 2.接 ...
- Disruptor系列(二)— disruptor使用
本文译自Dirsruptor在github上的wiki中文章:Getting Started 获取Disruptor Disruptor jar包可以从maven仓库mvnrepository获取,可 ...
- Vue实现简单的列表金额计算效果(简易购物车)
效果图: 使用技术:v-for v-bind v-on实现简单的列表选中绑定操作 代码: <!DOCTYPE html> <html> <head> <met ...
- 在C#中使用Panel控件实现在一个窗体中嵌套另一个窗体
在C#中使用Panel控件实现在一个窗体中嵌套另一个窗体 在C#中使用Panel控件实现在一个窗体中嵌套另一个窗体ShowAllPage sAllPage = new ShowAllPage(); ...
- js获取当前日期一年的第几周
获取当前日期一年中的第几周 function theWeek() { ; now = new Date(); years = now.getYear() ) years += ); days[] = ...