Dockerfile
http://blog.csdn.net/jiashiwen/article/details/48806243 一:如何使用:
docker build -t 命名空间/images名
FROM <image>FROM <image>:<tag>
RUN <command>(the command is run in a shell - `/bin/sh -c`)RUN ["executable","param1","param2" ...](exec form)
MAINTAINER <name>
CMD ["executable","param1","param2"](like an exec,this is the preferred form)CMD command param1 param2 (as a shell)
CMD ["param1","param2"](as default parameters to ENTRYPOINT)
ENTRYPOINT ["executable","param1","param2"](like an exec,the preferred form)ENTRYPOINT command param1 param2 (as a shell)
#CMD不会执行,只有ENTRYPOINT指令会被执行CMD echo "hello world"ENTRYPOINT ls -l
FROM ubuntuCMD ["-l"]ENTRYPOINT ["/usr/bin/ls"]
ENTRYPOINT["mecached"]USER daemon或ENTRYPOINT ["memcached","-u","daemon"]
EXPOSE <port>[<port>...]#映射一个端口EXPOSE port1#相应的运行容器使用的命令docker run -p port1 image#映射多个端口EXPOST port1 port2 port3#相应的运行容器使用的命令docker run -p port1 -p port2 -p port3 image#还可以指定需要映射到宿主机器上某个端口号docker run -p host_port1:port1 -p host_port2:port2 -p host_port3:port3 image
docker run -d -p 127.0.0.1:: image
ENV LANG en_US.UTF-ENV LC_ALL en_US.UTF-
ADD <src> <dest>
VOLUME ["<mountpoint>"]FORM baseVOLUME ["/tmp/data"]
docker run -it -rm -volumes-from container1 image2 bash
WORKDIR /path/to/workdir#在/p1/p2下执行 vim a.txtWORKDIR /p1 WORKDIR p2 RUN vim a.txt
ONBUILD <Dockerfile关键字>
#pull base imageFROM ubuntu:13.10MAINTAINER test "test@gmail.com"#update sourceRUN echo "deb http://archive.ubuntu.com/ubuntu precise main universe" > /etc/apt/sources.listRUN apt-get update#Install curlRUN apt-get install -y curl#install JDK 7RUN cd /tmp && curl -L 'http://download.oracle.com/otn-pub/java/jdk/7u65-b17/jdk-7u65-linux-x64.tar.gz' -H 'Cookie: oraclelicense=accept-securebackup-cookie; gpw_e24=Dockerfile' | tar -xzRUN mkdir -p /usr/lib/jvmRUN mv /tmp/jdk1.7.0_65/ /usr/lib/jvm/java--oracle/# Set Oracle JDK 7 as default JavaRUN update-alternatives --install /usr/bin/java java /usr/lib/jvm/java--oracle/bin/javaRUN update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java--oracle/bin/javacENV JAVA_HOME /usr/lib/jvm/java--oracle#Install tomcat7RUN cd /tmp && curl -L 'http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.8/bin/apache-tomcat-7.0.8.tar.gz' | tar -xzRUN mv /tmp/apache-tomcat-7.0./ /opt/tomcat7/ENV CATALINA_HOME /opt/tomcat7ENV PATH $PATH:$CATALINA_HOME/binADD tomcat7.sh /etc/init.d/tomcat7RUN chomd /etc/init.d/tomcat7#Expose portsEXPOSE#define default commandENTRYPOINT service tomcat7 start && tail -f /opt/tomcat7/logs/catalina.out
export JAVA_HOME=/usr/lib/jvm/java--oracle/export TOMCAT_HOME=/opt/tomcat7case $1 instart)sh $TOMCAT_HOME/bin/startup.sh;;stop)sh $TOMCAT_HOME/bin/shutdown.sh;;restart)sh $TOMCAT_HOME/bin/shutdown.shsh $TOMCAT_HOME/bin/startup.sh;;esacexit
有关docker部署php环境主参考 : http://blog.csdn.net/jiashiwen/article/details/48806243 (文章相当详细)
Dockerfile的更多相关文章
- 如何用Dockerfile创建镜像
本文原创,原文地址为:http://www.cnblogs.com/fengzheng/p/5181222.html 创建镜像的目的 首先说DockerHub或其它一些镜像仓库已经提供了够多的镜像,有 ...
- Dockerfile初探
git上的asp.net samples工程已经写好了docker file,内容是如下 //任何dockersfile都要以FORM开头,约定是用大写. FROM microsoft/aspne ...
- ubuntu 16.04 Dockerfile 安装mysql
默认上MariaDB的包并没有在Ubuntu仓库中.要安装MariaDB,我们首先要设置MariaDB仓库. 配置MariaDB 仓库 # apt-get install software-prope ...
- 分析Mysql 5.6的Dockerfile
Docker官方的Mysql镜像的Dockerfile托管在Github上,地址如下: https://github.com/docker-library/mysql/tree/5836bc9af9d ...
- 利用Dockerfile构建一个基于centos 7,包括java 8, tomcat 7,php ,mysql+mycat的镜像
Dockerfile内容如下: FROM centos MAINTAINER Victor ivictor@foxmail.com WORKDIR /root RUN rm -f /etc/yum.r ...
- Docker dockerfile创建Eclipse镜像初试
抽空初步阅读了Docker技术入门与实战 [Kindle电子书] http://www.cnblogs.com/2018/p/4600116.html 现在想首先在开发环境下引入统一的环境,由于开发中 ...
- 安装Nginx的Dockerfile实例
#################################################Dockerfile to build Nginx Installed Containers##Bas ...
- 测试dockerfile
测试dockerfile是否ok(比如我的Dockerfile在deploy目录下) docker build -t my_image -f deploy/Dockerfile . docker im ...
- 通过Dockerfile建立.NET Core mvc Image
生成.NET core mvc code docker run -itd microsoft/dotnet:latestdocker psdocker attach containeridmkdir ...
- .Net Core+cenos7+Docker+Dockerfile 部署实践
因为这段时间比较忙,同时也在抽时间将开发框架转移到 .net Core 上 所以写博客的时间就少了,这次我利用dockerfile成功将.net Core程序部署到了cenos7容器中,特抽时间把我的 ...
随机推荐
- bootstrap注意事项(八)一些辅助信息
1.三角符号 通过使用三角符号可以指示某个元素具有下拉菜单的功能.注意,向上弹出式菜单中的三角符号是反方向的. <!DOCTYPE HTML><html><head> ...
- JavaWeb Filter--过滤器 简介
本文转载自:http://blog.csdn.net/wanghuan203/article/details/7325651 过滤器就是在源数据和目的数据之间起过滤作用的中间件. Web应用中,在处理 ...
- iOS堆栈-内存-代码在据算机中的运行
其实作程序不管是那行,学什么语言最终的目的是和就算机打交道的,我们写的程序计算机是怎么处理的呢??? 计算机运行我们的程序无非就是吧磁盘-内存-cpu三者结合起来 我们写一个程序代码肯定是在此盘中存着 ...
- ORA-600[kcratr_scan_lastbwr]逻辑坏块解决
数据库版本: 11.2.0.3 问题现象: 今天在启动一台测试数据库的时候,发现db不能open,报错如下: ERROR at line 1: ORA-00600: internal error co ...
- C++ 类中指向函数的指针 以及 类模板
C++类中总是出现诸如下面的情况 这是一篇深入浅出讲解函数指针的文章,值得参考! http://blog.csdn.net/lishuhuakai/article/details/18276477 关 ...
- Rectangles
Given two rectangles and the coordinates of two points on the diagonals of each rectangle,you have t ...
- 项目中怎么去掉tomcat的猫
其实很简单,需要在登录页和显示内容的主页,将自己的favicon.ico 导入,并在登录页和主页将其引入即可. 例如: 接着在登录页引入 <link rel="shortcut ic ...
- 《UNIX环境高级编程》笔记--线程的标识、创建和终止
1.线程标识 就像每个进程都有一个进程ID一样,每个线程都有一个线程ID.进程ID在整个系统中是唯一的,但线程ID只在它所属的 进程环境中有效. 线程ID使用pthread_t数据类型来表示,实现的时 ...
- 软件测试学习日志————round 0 An impressed error in my past projects
在初学各种语言时总会出现各种错误,比如main携程mian.忘了加各种库,打错字等等等等.虽然这些错误后面看来很幼稚,但是有的时候真的会让人印象很深刻. 在初学JavaScript时,我对JavaSc ...
- Oracle EBS-SQL (SYS-2): sys_在线用户查询.sql
SELECT fs.USER_NAME, fu.description, fs.RESPONSIBILITY_NAME, fs.USER_FORM_NAME, ...