win安装doccano_Doccano标注系统安装与二次开发

论坛 期权论坛     
选择匿名的用户   2021-5-30 03:49   429   0
<div style="font-size:16px;">
<p>Doccano标注系统安装与二次开发(机器学习从业开发者标注工具,支持多语言)</p>
<p>文章目录</p>
<p>Doccano标注系统安装与二次开发(机器学习从业开发者标注工具,支持多语言)</p>
<p>Doccano标注系统安装</p>
<p>1.1 linux上单独部署</p>
<p>1.1 linux上,前后端分离部署</p>
<p>windows上二次开发环境部署</p>
<p>基于doccano项目的二次开发,为不同用户平均分配标注任务</p>
<p>Doccano是面向机器学习专业人员的开源文本标注工具。</p>
<p align="center"> <img alt="" src=""></p>
<p>Doccano标注系统安装</p>
<p>项目git地址: https://github.com/doccano/doccano</p>
<p>在doccano项目中,已经简单介绍过安装方法。项目实际文件时在app中。</p>
<p align="center"> git目录结构如下: <img alt="" src=""></p>
<p>1.1 linux上单独部署</p>
<p>git clone https://github.com/doccano/doccano.git</p>
<p>cd doccano/</p>
<p align="center"><img alt="" src=""></p>
<p>修改docker-compose.prod.yml文件中的用户名和密码</p>
<p>ADMIN_USERNAME: &#34;admin&#34;</p>
<p>ADMIN_PASSWORD: &#34;password&#34;</p>
<p>运行项目</p>
<p>docker-compose -f docker-compose.dev.yml up</p>
<p>在doccano项目中,已经介绍了上面方法部署。这里不再做过多介绍。</p>
<p>1.1 linux上,前后端分离部署</p>
<p>经过分析,doccano后端代码在app目录中,前端代码在app/server/static目录中。</p>
<p align="center"> 后端目录 <img alt="" src=""></p>
<p>前端目录</p>
<p align="center"> <img alt="" src=""></p>
<p>修改前端启动ip及其他</p>
<p>本次使用域名&#34;www.mumuxi.online&#34;</p>
<p>vim webpack.config.js修改后的文件如下 const fs &#61; require(&#39;fs&#39;);</p>
<p>const path &#61; require(&#39;path&#39;);</p>
<p>const process &#61; require(&#39;process&#39;);</p>
<p>const BundleTracker &#61; require(&#39;webpack-bundle-tracker&#39;);</p>
<p>const VueLoaderPlugin &#61; require(&#39;vue-loader/lib/plugin&#39;)</p>
<p>const { ContextReplacementPlugin } &#61; require(&#39;webpack&#39;);</p>
<p>const hljsLanguages &#61; require(&#39;./components/hljsLanguages&#39;);</p>
<p>const devMode &#61; process.env.DEBUG !&#61;&#61; &#39;False&#39;;</p>
<p>const hotReload &#61; process.env.HOT_RELOAD &#61;&#61;&#61; &#39;1&#39;;</p>
<p>const webpackHost &#61; process.env.WEBPACK_HOST || &#39;0.0.0.0&#39;;</p>
<p>const webpackPort &#61; process.env.WEBPACK_PORT ? parseInt(process.env.WEBPACK_PORT, 10) : 8080;</p>
<p>const pollMillis &#61; process.env.WEBPACK_POLL_MILLIS ? parseInt(process.env.WEBPACK_POLL_MILLIS, 10) : false;</p>
<p>const noSourceMap &#61; process.env.SOURCE_MAP &#61;&#61;&#61; &#39;False&#39;;</p>
<p>const pagesRoot &#61; path.join(__dirname, &#39;pages&#39;);</p>
<p>const entryPoints &#61; {};</p>
<p>fs.readdirSync(pagesRoot).forEach((scriptName) &#61;&gt; {<!-- --></p>
<p>const bundleName &#61; path.parse(scriptName).name;</p>
<p>const scriptPath &#61; path.join(pagesRoot, scriptName)</p>
<p>entryPoints[bundleName] &#61; scriptPath;</p>
<p>});</p>
<p>module.exports &#61; {<!-- --></p>
<p>mode: devMode ? &#39;development&#39; : &#39;production&#39;,</p>
<p>entry: entryPoints,</p>
<p>output: {<!-- --></p>
<p>publicPath: hotReload ? &#96;http://www.mumuxi.online:${webpackPort}/&#96; : &#39;&#39;,</p>
<p>path: path.join(__dirname, &#39;bundle&#39;),</p>
<p>filename: &#39;[name].js&#39;</p>
<p>},</p>
<p>devtool: noSourceMap ? false : (devMode ? &#39;cheap-eval-source-map&#39; : &#39;source-map&#39;),</p>
<p>devServer: {<!-- --></p>
<p>port: webpackPort,</p>
<p>host: webpackHost,</p>
<p>disableHostCheck: true,</p>
<p>hot: true,</p>
<p>quiet: false,</p>
<p>headers: { &#39;Access-Control-Allow-Origin&#39;: &#39;*&#39; }</p>
<p>},</p>
<p>watchOptions: {<!-- --></p>
<p>poll: pollMillis,</p>
<p>},</p>
<p>module: {<!-- --></p>
<p>rules: [</p>
<p>{<!-- --></p>
<p>test: /\.pug$/,</p>
<p>loader: &#39;pug-plain-loader&#39;</p>
<p>},</p>
<p>{<!-- --></p>
<p>test: /\.css$/,</p>
<p>use: [</p>
<p>&#39;vue-style-loader&#39;,</p>
<p>&#39;css-loader&#39;</p>
<p>]</p>
<p>},</p>
<p>{<!-- --></p>
<p>test: /\.vue$/,</p>
<p>loader: &#39;vue-loader&#39;</p>
<p>}</p>
<p>]</p>
<p>},</p>
<p>plugins: [</p>
<p>new ContextReplacementPlugin(</p>
<p>/highlight\.js\/lib\/languages$/,</p>
<p>new RegExp(&#96;^./(${hljsLanguages.join(&#39;|&#39;)})$&#96;)</p>
<p>),</p>
<p>new BundleTracker({ filename: &#39;./webpack-stats.json&#39; }),</p>
<p>new VueLoaderPlugin()</p>
<p>],</p>
<p>resolve: {<!-- --></p>
<p>extensions: [&#39;.js&#39;, &#39;.vue&#39;],</p>
<p>alias: {<!-- --></p>
<p>vue$: &#39;vue/dist/vue.esm.js&#39;,</p>
<p>},</p>
<p>},</p>
<p>}</p>
<p align="center"><img alt="" src=""></p>
<p>为前端创建Dockerfile文件,内容如下 FROM node</p>
<p>WORKDIR /usr/src/app</p>
<p># 设置时区</p>
<p>RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime</p>
<p>RUN echo &#39;Asia/Shanghai&#39; &gt;/etc/timezone</p>
<p>CMD [ &#34;bash&#34;]</p>
<p>创建并运行前端容器 # 构建镜像文件</p>
<p>docker build -t doccanoweb .</p>
<p># 初始化npm</p>
<p>docker run -i --rm --name doccanoweb --network host -v &#34;$PWD&#34;/:/usr/src/app/ -e PYTHONUNBUFFERED&#61
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP