【问题标题】:alpine linux docker image, console encoding troublealpine linux docker镜像,控制台编码麻烦
【发布时间】:2016-05-19 22:46:43
【问题描述】:

我有一个在 docker 容器中运行的 scala 应用程序。我使用基于 alpine linux 的图像'develar/java'。我的应用程序正在运行,但我没有看到西里尔文日志。这是我所拥有的:

docker logs -f myApp 
22:22:08.152 [main] INFO  application  - Creating Pool for datasource 'default'
22:22:09.213 [main] INFO  play.api.db.DefaultDBApi  - Database [default] connected at jdbc:postgresql://localhost/db
22:22:09.627 [main] INFO  p.a.l.concurrent.ActorSystemProvider  - Starting application default Akka system: application
22:22:09.698 [main] INFO  application  - ????????????? ??????? ???????
22:22:09.722 [main] INFO  application  - ????????????? ??????? 'direct
22:22:09.734 [main] INFO  application  - ????????????? ??????? 'adwords
22:22:09.761 [main] INFO  play.api.Play$  - Application started (Prod)
22:22:09.866 [main] INFO  play.core.server.NettyServer$  - Listening for HTTP on /0:0:0:0:0:0:0:0:9000

但是传递到elasticsearch服务器的日志是可以的。如何强制 alpine linux 使用 utf-8?

【问题讨论】:

  • 在你的 Dockerfile 中输入类似ENV LANG en_US.utf8
  • 我用 -e "LANG=en_US.utf8" 运行了容器,但没有帮助。当我在容器内键入 env 命令时,我看到了该变量:“LANG=en_US.utf8”
  • 你有没有复制器、Dockerfile、docker run 命令、有足够数据的github?
  • wiki.alpinelinux.org/wiki/Alpine_setup_scripts尝试setup-keymapsetup-timezone
  • 你能做一个测试吗,在你的 alpine Dockerfile ENV LC_ALL en_US.UTF-8 ENV LANG en_US.UTF-8 ENV LANGUAGE en_US.UTF-8

标签: java docker alpine


【解决方案1】:

develar/java 有一个旧 glibc 2.21 软件包的旧错误。 Andy Shinn(Alpine 的 glibc 包的创建者和维护者)和我在 glibc 2.23 打包中拥有 resolved this a long time ago,我已将其集成到 frolvlad/alpine-glibc 中,这是 frolvlad/alpine-oraclejre8 的基础镜像。只需将devalar/java 替换为frolvlad/alpine-oraclejre8:slim 就可以了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-05-17
    • 2018-01-14
    • 1970-01-01
    • 2011-12-27
    • 2019-02-14
    • 2015-12-04
    • 1970-01-01
    • 2020-11-29
    相关资源
    最近更新 更多