通过docker快速发布node.js应用

什么是Docker

开发者和运维管理员搭建的开放平台软件,可以在这个平台上创建,管理和运行生产应用。开源的应用内容引擎。体积小可快速部署。

正向代理:例如访问国外的网站,通过香港的http代理就可以正常访问外国网站,香港的这个http代理就是正向代理

反向代理:有一个对外的API服务,初期启动一台服务器,一个node.js进程就可以完成负载。后期访问量大,就需要Nginx发挥自己反向代理的作用。在Nginx后端添加或启动多个服务来分担访问压力。

Nginx放在Node.js之前

  1. 静态文件性能;
  2. 反向代理规则;
  3. 拓展性次;
  4. 稳定性和转发性能;
  5. 安全性和运维管理。

在生产环境中,永远把Nginx放在Node.js的前端,对安全性和拓展性能都有益处。

安装Docer和下载image镜像

对于centos系统

sudo yum install docker

#启动Docker服务并把Docker服务注册为开机启动

sudo service docker start

sudo chkconfig docker on

#检查Docker是否已经启动

ps -ef|grep docker

#若未启动成功,就需要进入/var/log查看Docker的日志文件信息

#下载centos镜像

sudo docker pull centos:7

sudo docker images centos

也可以访问https://registry.hub.docker.com/查看星星最多的

Docker常用命令

#获取帮助

docker -h

#获取镜像

sudo docker pull NAME[:TAG]

#命令例子

sudo docker pull centos:latest

#启动Container盒子

sudo docker run [options] IMAGE [COMMAND] [ARG]

#example:

sudo docker run -t -i centos /bin/bush

#查看镜像列表

sudo docker images [option] [NAME]

#example:

sudo docker images centos

#查看容器列表

sudo docker ps [options]

example:

sudo docker ps -a

#删除镜像,从本地删除一个已下载镜像

sudo docker rmi centos:latest

#移除一个或多个容器实例

sudo docker rm sudo docker ps -aq

#停止一个正在运行的容器

sudo docker kill 026e

#重启一个正在运行的容器

sudo docker restart 026e

#启动一个已停止的容器

sudo docker start 026e

启动Container盒子

image和Container之间的关系:image(镜像)可以理解为一个执行环境(env),在执行docker run之后Docker会根据当前image创建一个Container,Container是一个程序运行的沙箱,互相独立。

启动一段小程序Container

sudo docker run b15 /bin/echo 'Hello world'

Hello world

b15为之前下载的镜像(可以不用输完Image或者Container)

#启动一个稍微复杂的程序

sudo docker run -i -t b15 /bin/sh -c "while true; do echo hello world; sleep 1; done"

参数i表示同步Container的stdin,-t表示分配一个伪终端。

手动删除:sudo docker rm -f 026

转载于:https://www.cnblogs.com/LuoYao666/p/9792375.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值