无法在 docker 容器内安装 mysql-server

Could not install mysql-server inside docker container

我想用 MySQL 配置一个容器,然后我将向容器添加一个 java 应用程序。但是,我无法在容器内安装 MySQL-server。

这是我的 dockerfile:

FROM ubuntu:latest

RUN apt-get -y update

RUN apt-get -y install mysql-server --fix-missing --fix-broken

EXPOSE 3306

CMD ["/usr/bin/mysqld_safe"]

我收到以下错误:

Errors were encountered while processing: /var/cache/apt/archives/mysql-server-5.5_5.5.44-0ubuntu0.14.04.1_amd64.deb E: Sub-process /usr/bin/dpkg returned an error code (1) 2015/09/01 13:17:36 The command [/bin/sh -c apt-get -y install mysql-server --fix-missing --fix-broken] returned a non-zero code: 100

可能发生的情况是 apt-get install 正在请求输入,但失败了。如果您只是 运行 在基本容器中以交互方式执行这些命令,会发生什么情况?例如使用 docker run -ti --rm ubuntu:latest /bin/bash

启动 shell

您可以尝试的一件事是使用 DEBIAN_FRONTEND=noninteractive 环境变量,例如

RUN apt-get update && \
  DEBIAN_FRONTEND=noninteractive apt-get -yq install mysql-server

我建议您切换到单独容器中的 microservices and use official mysql docker container 和 java 应用程序。

我建议您使用官方 mysql docker 图片。当 运行ning 时,您必须在 docker 运行 命令期间提供 root 密码作为环境变量。那会更好。