zoukankan      html  css  js  c++  java
  • docker学习实践之路[第三站]node站点部署

    拉取node镜像

    docker pull node 

    定制Dockerfile文件

    FROM node
    EXPOSE 8360
    ENTRYPOINT [ "node", "/www/production.js" ]
    • FROM 指定基础镜像:

        所谓定制镜像,那一定是以一个镜像为基础,在其上进行定制。就像我们之前运行 了一个 nginx 镜像的容器,再进行修改一样,基础镜像是必须指定的。而 FROM 就是指定基础镜像,因此一个 Dockerfile 中 FROM 是必备的指令,并 且必须是第一条指令。

    • EXPOSE 声明端口

        EXPOSE 指令是声明运行时容器提供服务端口,这只是一个声明,在运行时并不 会因为这个声明应用就会开启这个端口的服务。在 Dockerfile 中写入这样的声明有 两个好处,一个是帮助镜像使用者理解这个镜像服务的守护端口,以方便配置映 射;另一个用处则是在运行时使用随机端口映射时,也就是 docker run -P 时,会自动随机映射 EXPOSE 的端口。

    • ENTRYPOINT 入口点

        ENTRYPOINT 的目的和 CMD 一样,都是在指定容器启动程序及参 数。 ENTRYPOINT 在运行时也可以替代,不过比 CMD 要略显繁琐,需要通过 docker run 的参数 --entrypoint 来指定。

    建立镜像

    docker build -t mythinkjs .

    mythinkjs为新建立镜像的名称,尾部的.必须添加,这个是指明在当前位置寻找Dockerfile文件。

    测试运行

    docker run --name mythinkjs -d -v /mnt/www/w2:/www -p 80:8360 thinkjs_demo

     上面命令如有不清楚请看上一篇文章。

    下面结果:

  • 相关阅读:
    vsftp关于"550 create directory operation failed"问题解决
    CentOS 5.5 Samba服务器安装总结
    Centos 5.5下安装samba
    iptables里filter表前面几个数字的意思
    Linux误删C基本运行库libc.so.6急救方法
    Linux升级C基本运行库CLIBC
    MySQL的Grant命令
    Apache Options指令详解
    Apache的Order Allow,Deny 详解
    Python 中 open()文件操作的方式
  • 原文地址:https://www.cnblogs.com/xingbo/p/7889785.html
Copyright © 2011-2022 走看看