首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >码头日志没有显示颜色(表示+ nodejs图像)

码头日志没有显示颜色(表示+ nodejs图像)
EN

Stack Overflow用户
提问于 2015-09-21 12:12:03
回答 2查看 3.5K关注 0票数 4

一个小而有趣的问题(对我来说):

我正在尝试从我编写的小型服务器( nodejs + express)创建停靠映像。我的服务器代码是:

代码语言:javascript
运行
复制
var express = require('express');
var Inflector = require('inflected');
var colors = require('colors');

var app = express();

app.get('/hello/:name', function(req, res, next){
    var name = Inflector.titleize(req.params.name);
    console.log("Saying hello to " + name.yellow);
    res.send('Hello ' + name);
});

var port = 9090;
app.listen(port, function(){
    console.log(('App is running on port ' + port).inverse);
});

我正在用这个Dockerfile创建我的形象:

代码语言:javascript
运行
复制
FROM centos:centos6

RUN     rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

RUN     yum install -y npm

COPY . /src

RUN cd /src; npm install

EXPOSE 9090

CMD ["node", "/src/index.js"]

使用常用命令构建和运行映像:

代码语言:javascript
运行
复制
docker build -t username:centos-nodejs
docker run -p 9090:9090 username:centos-nodejs

我原以为日志会在命令行中显示颜色,就像它们没有停靠(例如,node index.js)一样。

原因是什么,我能解决吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-09-21 15:39:23

您需要使用"-it“选项运行容器:

代码语言:javascript
运行
复制
docker run -it -p 9090:9090 username:centos-nodejs
票数 6
EN

Stack Overflow用户

发布于 2016-07-21 15:53:38

这个特定问题的答案并不完全正确,但如果您使用的是调试库,并且有相同的问题,那么即使在非TTY中,也有一个非文档化的环境变量可以启用颜色:

https://github.com/visionmedia/debug/blob/39ecd87bcc145de5ca1cbea1bf4caed02c34d30a/node.js#L45

因此,将DEBUG_COLORS=true添加到您的环境变量中,可以为调试库颜色修复它。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32694928

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档