glo*_*nip 2 windows nginx docker laradock
所以,在上周左右,我一直在努力让我的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的行尾.我试图进入/opt/startup.sh,但它似乎并不存在.我发现还有另一个startup.sh内部laradock/nginx/,我ssh'ed到Docker VM,看到每一行结束^M,我怀疑可能已经\r.我删除了那些,但没有真正改变,仍然遇到了同样的问题.
在ssh中,我也使用了启动bash文件的hexdump hexdump startup.sh | grep 0d0a,但没有出现.我对解决方案感到茫然,并不确定我还能做些什么.请注意,Docker for Windows或BitLocker是不可能的,因为我只有Windows 10 Home.
我可以尝试解决这个问题吗?这是一个已知的问题吗?
小智 6
您可以尝试将laradock\nginx\startup.sh文件的Windows样式行结尾转换为linux样式行结尾,即使用Notepad ++(编辑> EOL转换> Unix(LF)).
然后尝试使用rebuild选项启动nginx容器:
docker-compose up --build nginx
| 归档时间: |
|
| 查看次数: |
932 次 |
| 最近记录: |