利用Dockerfile制作node+nginx应用自启动镜像
来源:互联网 发布:淘宝评论手机壳好评 编辑:程序博客网 时间:2024/05/21 07:59
利用Dockerfile制作node+nginx应用自启动镜像。
基础镜像:
在写Dockerfile之前首先需要建立一个完整的装好node环境与应用,以及nginx代理的基础镜像。
编辑Dockfile:
#FROM表明所基于的镜像
FROM testqhf
#作者信息
MAINTAINER qhf
#安装ssh服务
RUN yum install openssh-server -y
RUN mkdir -p /var/run/sshd
RUN mkdir -p /root/.ssh
RUN sed -ri 's/session required pam_loginuid.so/#session required pam_loginuid.so/g' /etc/pam.d/sshd
RUN ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
#配置信息
ENV NODE_HOME=/usr/node/node-v4.2.0-linux-x64
ENV PATH=$PATH:$NODE_HOME/bin
ENV NODE_PATH=$NODE_HOME/lib/node_modules
#启动
RUN echo "#!/bin/bash"> /root/run.sh
RUN echo "service nginx start">> /root/run.sh
#进入到应用目录下启动应用
RUN echo "cd /usr/app&&npm start" >> /root/run.sh
RUN echo "/usr/sbin/sshd -D ">> /root/run.sh
RUN chmod 755 /root/run.sh
#端口
EXPOSE 80
CMD ["/root/run.sh"]
注意:
#启动命令需根据自己的需要编译
#pm2启动node
RUN echo "cd /usr/app&&pm2 start bin/www" >> /root/run.sh
#strongloop启动node
RUN echo "cd /usr/app;slc pm --json-file-db & slc start
" >> /root/run.sh
根据所写的Dockerfile构建一个镜像:
docker buid -t *** .(***为自己起的镜像名,不要忘了后面的点)
注意:创建镜像要在Dockerfile所在的目录下,否则会提示找不到Dockerfile
等待完成,这样一个node环境的镜像就完成了,可以通过docker run 新建一个基于此镜像的容器进行测试。
- 利用Dockerfile制作node+nginx应用自启动镜像
- Dockerfile编写制作含有node环境的项目镜像
- Dockerfile编写制作含有node环境的项目镜像
- Dockerfile生成镜像并实现应用自启
- dockerfile制作docker镜像
- Dockerfile制作Docker镜像
- Dockerfile制作tomcat镜像
- dockerfile创建nginx镜像
- Dockerfile:nginx镜像编写
- 利用Dockerfile构建镜像
- 使用Dockerfile制作Docker镜像
- Dockerfile 构建nginx镜像并运行
- Docker使用Dockerfile创建支持ssh服务自启动的容器镜像
- Docker使用Dockerfile创建支持ssh服务自启动的容器镜像
- 使用Dockerfile创建支持ssh服务自启动的容器镜像
- 使用Dockerfile创建支持sshd服务自启动的容器镜像(Ubuntu14.04)
- 使用Dockerfile创建支持sshd服务自启动的容器镜像(CentOS)
- 使用Dockerfile构建支持ssh服务自启动的容器镜像
- 剑指Offer---面试题18:树的子结构
- 进程与线程的关系
- 在unity中用UDP实现发送消息机制
- android底层驱动学习之debug方法(proc、sysfs、debugfs)
- 基本套接字调用函数
- 利用Dockerfile制作node+nginx应用自启动镜像
- PLSQL Developer 使用方法
- Gradle for Android 第三章:依赖管理
- hbase的rowkey的字典排序(三维有序)
- Android设计模式学习笔记(单例模式)
- Log4J日志配置详解
- 初次探索Android Gradle
- js中的快速排序
- 采用静态Map、ConcurrentHashMap处理缓存