所以,上周左右我一直在努力让我的 nginx 服务器从 Docker/Laradock 上运行。奇怪的是,当我在 C:/ 上运行它时它起作用了,但是在工作告诉我必须加密我的磁盘后,我下载了 VeraCrypt 并制作了一个加密驱动器 Y:/ 并将我的 vhosts 文件夹复制到那里。
经过很多努力甚至试图laradock_nginx_1
附加,我遵循了这个指南,因为我认为 Docker Toolbox 可能无法访问 Y:/ 驱动器。这似乎可行,但是在尝试启动和运行 nginx 时我仍然遇到一个奇怪的错误:
Y:\vhosts\laradock>docker-compose up nginx
WARNING: The PHP_FPM_INSTALL_TOKENIZER variable is not set. Defaulting to a blank string.
laradock_workspace_1 is up-to-date
Starting laradock_docker-in-docker_1 ... done
Starting laradock_php-fpm_1 ... done
Starting laradock_nginx_1 ... done
Attaching to laradock_nginx_1
nginx_1 | /opt/startup.sh: line 2: $'\r': command not found
nginx_1 | /opt/startup.sh: line 10: syntax error: unexpected end of file
laradock_nginx_1 exited with code 2
在其他地方读到这\r
只是 Windows 的行尾。我试图 cd into /opt/startup.sh
,但它似乎不存在。我发现startup.sh
里面还有另一个laradock/nginx/
,我 ssh 进入 Docker 虚拟机并看到每一行都以 结尾^M
,我怀疑这可能是\r
。我删除了那些,但没有真正改变,仍然遇到同样的问题。
在 ssh 中,我还使用 对启动 bash 文件进行了十六进制转储hexdump startup.sh | grep 0d0a
,但没有任何结果。我对解决方案一无所知,并且不确定我还能尝试做什么。请注意,Docker for Windows 或 BitLocker 是不可能的,因为我只有 Windows 10 Home。
我可以尝试什么来解决这个问题?这是一个已知问题吗?