以下内容在本地计算机上可以正常运行,但在检入CircleCI时失败:
mysql:
image: mysql:5.7
ports:
- 3306:3306
environment:
- MYSQL_ALLOW_EMPTY_PASSWORD=true
- MYSQL_ROOT_HOST=%
restart: always
volumes:
- ./docker/mysql/mysqld.cnf:/etc/mysql/conf.d/mysql.cnf
检出的项目下../docker/mysql/mysqld.cnf中有一个文件。
CircleCi上显示的错误是:
错误:对于proj-server_mysql_1无法启动服务mysql:b'oci 运行时错误:container_linux.go:265:启动容器进程 引起“ process_linux.go:368:引起容器初始化 \“ rootfs_linux.go:57:安装 \\\“ / home / circleci / max / proj-server / docker / mysql / mysqld.cnf \\\” 到rootfs \\\“ / var / lib / docker / aufs / mnt / 4a9af90d342b491ae92af5a88360d2e34fce0d21c15f8a648767e89fb51aa \\\” 在 \\\“ / var / lib / docker / aufs / mnt / 4a9af90d342b491ae92af5a88360d2e34fce0d21c15f8a648767e89fb51aa / etc / mysql / conf.d / mysql.cnf \\\” 导致\\\“不是目录\\\”“ \”“ \ n:您是否要挂载 目录到文件上(反之亦然)?检查指定的主机 路径存在,并且是预期的类型'
答案 0 :(得分:1)
不可能与docker executor一起使用卷挂载,但是通过使用机器执行器,可以将本地目录挂载到正在运行的Docker容器中。您可以了解有关机器执行器here on our docs page的更多信息。