Docker。无法启动服务应用。OCI运行时创建失败。

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

当我的Mac更新到 卡塔利娜不幸的是,我得到了错误。

ERROR: for app Cannot start service app: OCI runtime create failed: container_linux.go:345: starting container process caused "process_linux.go:430: container init caused \"rootfs_linux.go:58: mounting \\\"/Users/maciejtrzcinski/Sites/docker/openinvest/config/apache/.htaccess\\\" to rootfs \\\"/mnt/sda1/var/lib/docker/overlay2/a088def6294f3c190633026f8d28b68bc6a6eb5cbca33f2dcf7272d716a54ba5/merged\\\" at \\\"/mnt/sda1/var/lib/docker/overlay2/a088def6294f3c190633026f8d28b68bc6a6eb5cbca33f2dcf7272d716a54ba5/merged/var/www/html/.htaccess\\\" caused \\\"not a directory\\\"\"": unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type

YML文件。

version: "3"

services:
  app:
    image: wordpress:5.1.1-php7.2
    depends_on:
      - mariadb
    env_file:
      - .env
    volumes:
      - ./log/apache2:/var/log/apache2
      - ./config/apache/.apache:/var/www/html/.apache
      - ./wp-content:/var/www/html/wp-content
    ports:
      - 80:80
  mariadb:
    image: mariadb:10
    volumes:
      - ./data/mariadb:/var/lib
    ports:
      - 3306:3306
    environment:
      MYSQL_ROOT_PASSWORD: ${WORDPRESS_DB_PASSWORD}
      MYSQL_DATABASE: ${WORDPRESS_DB_NAME}
      MYSQL_USER: ${WORDPRESS_DB_USER}
      MYSQL_PASSWORD: ${WORDPRESS_DB_PASSWORD}

我正在尝试用 - ./config/apache/:/var/www/html/但这也不工作.任何人都知道也许是哪里的问题?

macos apache docker docker-compose
1个回答
2
投票

我删除了旧的容器,并添加了一个新的容器,工作。

  1. docker-machine remove [old]
  2. docker-machine create [new]
  3. eval $(docker-machine env [new])
  4. docker-compose up

0
投票

我在处理一个类似的问题时,也遇到过类似的问题。 应用于 Ubuntu 18.04. 我在应用程序中设置了一个 Dockerfile 并与 docker-compose.yml.

这是我得到的错误信息:

我以前曾使用以下方法建立图像: docker-compose build所以我不再运行 docker-compose build 然而,当我再次运行命令 docker-compose up 启动容器,我得到这个错误。

ERROR: for mailing_list_app_1 Cannot start service app: OCI运行时创建失败:container_linux.go:349:启动容器进程导致 "exec: \".entrypointsrails-entrypoint.sh"\": stat .entrypointsrails-entrypoint.sh: no such file or directory": unknown

ERROR: for app Cannot start service app: OCI运行时创建失败:container_linux.go:349:启动容器进程导致 "exec: \".entrypointsrails-entrypoint.sh"\":stat .entrypointsrails-entrypoint.sh: no such file or directory": unknown ERROR: 遇到错误,而提起项目。

问题是我移动了文件,并将其重命名为".entrypointsrails-entrypoint.sh"。/entrypoints/rails-entrypoint.shdocker/entrypoints/docker-entrypoint.sh.

所以当我运行命令时 docker-compose up 启动容器,但由于无法再找到容器的名字,所以失败了。/entrypoints/rails-entrypoint.sh 文件。

我是这样解决的:

通过运行该命令为项目重建镜像。这将复制 新的 文件 (docker/entrypoints/docker-entrypoint.sh)到新的图像中,并删除链接到的 旧的 文件 (/entrypoints/rails-entrypoint.sh):

docker-compose build

然后用新建的镜像再次启动容器。

docker-compose up

就这样了

希望对你有所帮助

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