大学城网站开发公司,沈阳企业免费建站,网站建设福州,四川欧瑞建设集团网站前些天发现了一个巨牛的人工智能学习网站#xff0c;通俗易懂#xff0c;风趣幽默#xff0c;忍不住分享一下给大家。点击跳转到教程。
前言 Docker 是一个开源的容器引擎。开发者可以将自己的应用以及依赖打包为一个可移植的容器#xff0c;然后发布到 Linux 机器上。…前些天发现了一个巨牛的人工智能学习网站通俗易懂风趣幽默忍不住分享一下给大家。点击跳转到教程。
前言 Docker 是一个开源的容器引擎。开发者可以将自己的应用以及依赖打包为一个可移植的容器然后发布到 Linux 机器上。它类似于一个轻量级的虚拟机极大地方便了用户在服务器端部署和管理应用环境。
一、在 Ubuntu 中安装 Docker 配置 Node 的运行环境有时候需要编译 Node 的 C 模块。Node 的编译环境要求 GCC/g 4.8 或以上的版本。在一些较低版本的 Linux 服务器上编译安装 GCC 是一件非常耗时的事情。使用 Docker 可以省去这些麻烦快速部署应用。可以使用 docker pull 命令下载一个支持 Node 运行和编译的 Linux 镜像基于此镜像制作一个包含 Node 程序运行环境的新镜像以后就可以直接使用这个镜像部署 Node 服务。
在Linux下使用root登录后运行本文环境Ubuntu Server 16.04.3 LTS
apt install docker.io安装成功后查看docker版本docker --version二、在 Docker 中安装 Node 从国内的镜像网站上pull下一个 nodejs 镜像前提是已启动 docker
docker pull hub.c.163.com/nce2/nodejs:0.12.2
下载完后查看我们的镜像找到他的名称等会我们会用到 docker images
三、创建Node.js 程序 创建package.json,并写入相关信息和依赖 nano package.json
{name: webTest,version: 1.0.0,description: Node.js on Docker,author: abloume,main: server.js,scripts: {start: node server.js},dependencies: {express: ^4.13.3}
}创建server.js nano server.js
use strict;var express require(express);var PORT 8888;var app express();
app.get(/, function (req, res) {res.send(Hello world\n);
});app.listen(PORT);
console.log(Running on http://localhost: PORT);四、创建Dockerfile Dockerfile 这个文件是创建镜像所必须的文件
FROM hub.c.163.com/nce2/nodejs:0.12.2 # 构建镜像的基础源镜像# Create app directory
RUN mkdir -p /home/Service # 用于在Image里创建一个文件夹并用来保存我们的代码
WORKDIR /home/Service # 将我们创建的文件夹做为工作目录# Bundle app source
COPY . /home/Service # 把本机当前目录下的所有文件拷贝到Image的/home/Service文件夹下
RUN npm install # 使用npm 安装我们的app据需要的所有依赖EXPOSE 8888
CMD [ npm, start ]五、构建Image 在你Dockerfile文件所在的目录下运行下面的命令来构建一个Image
docker build -t mynodeapp . # 将我们上面的创建一个名为mynodeapp的镜像
构建完后查看一下我们的镜像 docker ps 是否有 mynodeapp
六、运行镜像
docker run -d -p 8888:8888 [容器ID]
-d 后台运行。 -p 设置端口映射。 这时在外网即可访问 IP地址:8888 前面的端口号是外网访问端口后面的是窗口映射端口。 转自https://blog.csdn.net/u013451157/article/details/79003717