这里主要讲利用Dockerfile快速搭建node.js运行环境,具体来说快速创建nodejs的docker镜像,并运行该镜像为模板的容器,方便访问:步奏如下:
准本工作当前目录下创建一个node项目:
sudo vi index.js
===============================
var http = require("http");
http.createServer(function(request, response) {
console.log('request received');
response.writeHead(200, {"Content-Type": "text/plain"});
response.write("Hello World");
response.end();
}).listen(8888);
console.log('server started');
下载一个ubuntu镜像:
sudo docker pull ubuntu
创建Dockfile,【保证Dockerfile和index.js处于相对目录】:
====================================
FROM ubuntu
MAINTAINER zfeig <zfeig@126.com>
RUN apt-get update
RUN apt-install -y nodejs npm
COPY index.js /index.js
EXPOSE 8888
CMD ["nodejs","/index.js"]
创建docker镜像:
docker build -t zfeig/node .
运行创建的docker容器
docker run -p 8888:8888 -d --name nodeserver zfeig/node
页面访问:
打开浏览器访问 物理主机ip+端口即可,本次例子物理机ip为192.168.61.241
http://192.168.61.241:8888
查看当前运行的容器的进程pid
ps -ef -l 获取容器id 假设为 89ed789sd89或者 $(docker ps -q)
docker inspect -f '{{.State.Pid}}' 89ed789sd89
查看当前容器的id
docker ps -q
查看当前的后台运行容器的输出和日志
docker logs 容器id
注:容器id和镜像id不是同一个东西
其他命令:
docker ps -l //获取当前运行的容器列表
docker ps -a //获取所有[已停止]容器执行命令历史记录
docker ps -q //获取容器id