相关疑难解决方法(0)

如何在Docker的构建上下文之外包含文件?

如何使用Docker文件中的"ADD"命令包含Docker构建上下文之外的文件?

从Docker文档:

路径必须位于构建的上下文中; 你不能添加../something/something,因为docker构建的第一步是将上下文目录(和子目录)发送到docker守护进程.

我不想重构我的整个项目只是为了适应Docker这个问题.我想将所有Docker文件保存在同一个子目录中.

此外,似乎Docker还没有(也可能不会)支持符号链接:Dockerfile ADD命令不遵循主机#1676上的符号链接.

我能想到的唯一另一件事是包含一个预构建步骤,将文件复制到Docker构建上下文中(并配置我的版本控制以忽略这些文件).还有比这更好的解决方法吗?

docker

367
推荐指数
12
解决办法
17万
查看次数

Docker-撰写持久数据MySQL

如果我运行$ docker-compose down以下内容,我似乎无法保持MySQL数据持续存在.yml

version: '2'
services:
  # other services

  data:
    container_name: flask_data
    image: mysql:latest
    volumes:
      - /var/lib/mysql
    command: "true"

  mysql:
    container_name: flask_mysql
    restart: always
    image: mysql:latest
    environment:
      MYSQL_ROOT_PASSWORD: 'test_pass' # TODO: Change this
      MYSQL_USER: 'test'
      MYSQL_PASS: 'pass'
    volumes_from:
      - data
    ports:
      - "3306:3306"
Run Code Online (Sandbox Code Playgroud)

我的理解是在我的data容器中使用volumes: - /var/lib/mysqlmap将它映射到我的本地机器目录,其中mysql将数据存储到容器中,并且由于这种映射,即使容器被销毁,数据也应该保持不变.而mysql容器只是进入数据库的客户端接口,因为可以看到本地目录volumes_from: - data

尝试这个答案,它没有用.Docker-撰写持久性数据问题

编辑

改变了我.yml如下图所示,创建了目录./data,但现在当我运行docker-compose up --buildmysql容器无法启动抛出错误说

  data:
    container_name: flask_data
    image: mysql:latest
    volumes:
      - ./data:/var/lib/mysql …
Run Code Online (Sandbox Code Playgroud)

docker docker-compose

120
推荐指数
6
解决办法
13万
查看次数

标签 统计

docker ×2

docker-compose ×1