错误/ dev / tty:在docker中安装sqlcmd时没有这样的设备或地址

问题描述 投票:0回答:1

我想在docker映像中安装sql cmd。我的dockerfile具有这些命令来安装sqlcmd(centos 7基本映像)

RUN curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/msprod.repo
RUN yum remove mssql-tools unixODBC-utf16-devel
RUN yum install -y unixODBC-devel mssql-tools

以下是Docker构建日志

Transaction test succeeded
Running transaction
  Updating   : libcom_err-1.42.9-17.el7.x86_64                             1/14
  Installing : unixODBC-2.3.7-1.rh.x86_64                                  2/14
  Updating   : libss-1.42.9-17.el7.x86_64                                  3/14
  Installing : e2fsprogs-libs-1.42.9-17.el7.x86_64                         4/14
  Installing : e2fsprogs-1.42.9-17.el7.x86_64                              5/14
  Updating   : 1:openssl-libs-1.0.2k-19.el7.x86_64                         6/14
  Installing : 1:make-3.82-24.el7.x86_64                                   7/14
  Installing : 1:openssl-1.0.2k-19.el7.x86_64                              8/14
/var/tmp/rpm-tmp.8S1dKq: line 17: /dev/tty: No such device or address
error: %pre(msodbcsql17-17.5.2.1-1.x86_64) scriptlet failed, exit status 1
Error in PREIN scriptlet in rpm package msodbcsql17-17.5.2.1-1.x86_64
error: msodbcsql17-17.5.2.1-1.x86_64: install failed
/var/tmp/rpm-tmp.tObfQB: line 4: /dev/tty: No such device or address
error: %pre(mssql-tools-17.5.2.1-1.x86_64) scriptlet failed, exit status 1
Error in PREIN scriptlet in rpm package mssql-tools-17.5.2.1-1.x86_64
  Installing : unixODBC-devel-2.3.7-1.rh.x86_64                           11/14
error: mssql-tools-17.5.2.1-1.x86_64: install failed
  Cleanup    : 1:openssl-libs-1.0.2k-8.el7.x86_64                         12/14
  Cleanup    : libss-1.42.9-10.el7.x86_64                                 13/14
  Cleanup    : libcom_err-1.42.9-10.el7.x86_64                            14/14
  Verifying  : libss-1.42.9-17.el7.x86_64                                  1/14

[当我使用docker exec在容器的终端内手动运行此安装命令时,它可以正常工作。如果我直接在Linux机器上运行此命令,它将运行正常。仅当我使用docker build构建docker映像时,才收到错误/ dev / tty:无此类设备或地址

docker centos dockerfile sqlcmd tty
1个回答
0
投票

尝试:RUN ACCEPT_EULA = Y yum install -y unixODBC-devel mssql-tools

© www.soinside.com 2019 - 2024. All rights reserved.