【问题标题】:Docker cannot start container no such file or directoryDocker无法启动容器没有这样的文件或目录
【发布时间】:2014-11-10 11:20:52
【问题描述】:

构建后我无法启动我的容器,我得到了:

Error response from daemon: Cannot start container ogc-mysql: no such file or directory
Error: failed to start one or more containers

这是我的 Docker 文件:

FROM ubuntu:latest

MAINTAINER Davin Kevin

# Install latest updates
RUN apt-get update
RUN apt-get upgrade -y

# Install mysql client and server
RUN apt-get -y install mysql-client mysql-server curl

# Enable remote access (default is localhost only, we change this
# otherwise our database would not be reachable from outside the container)
RUN sed -i -e"s/^bind-address\s*=\s*127.0.0.1/bind-address = 0.0.0.0/" /etc/mysql/my.cnf

# Install database
ADD ./database.sql /var/db/database.sql

# Set Standard settings
ENV user ogc
ENV password ogc
ENV url file:/var/db/database.sql
ENV right READ

# Install starting script
ADD ./start-database.sh /usr/local/bin/start-database.sh
RUN chmod +x /usr/local/bin/start-database.sh

EXPOSE 3306

CMD ["/usr/local/bin/start-database.sh"]

而我的 sh 脚本只做:

docker build -t ogc-mysql .
docker run --name ogc-mysql -d -p 3306:3306 ogc-mysql

参考 Docker 文档:

docker build 将返回 no such file or directory 错误,如果文件 或目录在上传的上下文中不存在。这可能会发生 如果没有上下文,或者您指定的文件位于其他位置 主机系统。上下文仅限于当前目录(和 它的孩子)出于安全原因,并确保可重复构建 远程 Docker 主机。这也是为什么 ADD ../file 不会的原因 工作。

此命令:docker ps -a 返回:

CONTAINER ID : 70..
IMAGE : ogc-sql:latest
COMMAND : "/usr/local/bin/star"
CREATED : 13 seconds ago
STATUS : /
PORTS : /
NAMES : ogc-mysql

事实上,这个命令可以在 Mac OS 上成功运行..

【问题讨论】:

    标签: mysql linux ubuntu boot2docker


    【解决方案1】:

    我在使用 CMD 集成和调用 shell 脚本时遇到了这个问题,该脚本在我的容器中有 Windows 换行符 (CR+LF)。

    在转换为 Linux 行尾(仅限 LF)并重建容器后,它会正常启动。

    【讨论】:

      【解决方案2】:

      docker 运行语法是 来自https://docs.docker.com/reference/commandline/cli/#run

      docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

      由于 ogc-mysql 不是图像或命令,因此失败

      你能发布结果吗

      docker ps -a 
      

      【讨论】:

        【解决方案3】:

        问题已解决,是 sh 文件中的行尾问题...

        【讨论】:

        • 如果您澄清了行尾问题是什么,这可能会有所帮助。
        • true.. 那会很有帮助
        猜你喜欢
        • 2015-12-27
        • 1970-01-01
        • 2013-08-08
        • 2021-05-17
        • 1970-01-01
        • 2015-06-14
        • 2019-06-19
        • 2021-01-09
        • 1970-01-01
        相关资源
        最近更新 更多