创建简易 Node.js 应用的docker镜像

本文将介绍 Dynamsoft Barcode Reader node.js 版本的web应用在docker上创建独立镜像的基本步骤。

Node.js 应用

首先,我们将通过这篇文章中介绍的 Node.js barcode app 作为本教程的Node.js 示例应用。
其次,在安装过程中我们会用到Dynamsoft Barcode Reader SDK v7.2 和 node-gpy。

环境

Ubuntu 16.04.6 LTS
Node v8.11.3
Npm 5.6.0
Nvm 0.35.3
Vim 7.4.1689

Dynamsoft Barcode Reader SDK v7.2

下载

wget https://github.com/dynamsoft-dbr/nodejs/releases/download/v7.2/dbr-linux-7.2.tar.gz

解压

tar -xzf dbr-linux-7.2.tar.gz

安装编译DBR Node.js Extension

克隆代码

git clone https://github.com/dynamsoft-dbr/nodejs.git

编辑 binding.gyp

cd src
vim binding.gyp

替换

请将 /mnt/g/nodejs/libDynamsoftBarcodeReader.so 和 /mnt/g/nodejs 替换成上面的DBR 7.2 库文件所在路径。例如:
创建简易 Node.js 应用的docker镜像_第1张图片

构建

npm i node-gyp -g
node-gyp configure
node-gyp build

创建Node.js Docker image

进入Node.js web app

cd ../examples/web

创建并进入Dockerfile

touch Dockerfile
vim Dockerfile

编辑Dockerfile

添加基础docker镜像 Node v8.11.2

FROM node:8.11.2

创建并声明工作路径

RUN mkdir -p /usr/src/dbr
WORKDIR /usr/src/dbr

拷贝解码库并建立软连接

COPY libDynamsoftBarcodeReader.so ./
RUN ln -s /usr/src/dbr/libDynamsoftBarcodeReader.so /usr/lib/libDynamsoftBarcodeReader.so

拷贝当前项目

COPY . ./

设立外部端口

EXPOSE 2018

运行

CMD [ “npm”, “start” ]

完整Dockerfile

创建简易 Node.js 应用的docker镜像_第2张图片

将该项目所用到的所有文件放于同一目录下

cp <your path to>/Dynamsoft/BarcodeReader/lib/libDynamsoftBarcodeReader.so ./
cp ../../src/config.js ./
cp -r ../../srcbuild ./

创建简易 Node.js 应用的docker镜像_第3张图片
至此,所有准备工作已完成,开始我们的docker化吧!

构建docker镜像

sudo docker build -t <your username>/dbr-web-app .

运行

sudo docker run -p 2018:2018 <your username>/dbr-web-app

创建简易 Node.js 应用的docker镜像_第4张图片

许可

您可以通过编辑config.js来使用您的许可。如果您还没有我们的许可,可以通过这个链接获取免费30天的开发试用许可。

你可能感兴趣的:(创建简易 Node.js 应用的docker镜像)