docker - 如何更正 nginx 单元文件中的无效转义序列

标签 docker ssl nginx systemd

我正在尝试在生成我的 ssl 证书的路径中安装一个 docker 卷。但是,当我将路径 -v/etc/ssl:/etc/ssl\ 添加到我的 nginx.service 单元文件中时:

[Service]
Restart=always
ExecStartPre=-/usr/bin/docker kill %p
ExecStartPre=-/usr/bin/docker rm -f %p
ExecStart=/usr/bin/docker run -t --rm --name %p \
  -p 80:80 -p 443:443 \
  --link custodian:custodian --volumes-from custodian \
  -v /etc/ssl:/etc/ssl \ 
  -v /etc/ssl/certs:/etc/ssl/certs \
  -v /var/www/letsencrypt/.well-known/acme-challenge:/var/www/letsencrypt/.well-known/acme-challenge \
  -v /etc/ssl/private:/etc/ssl/private %p
ExecStop=/usr/bin/docker stop %p

nginx 日志返回:

[/etc/systemd/system/nginx.service:10] Invalid escape sequences in line, correcting: "/usr/bin/docker run -t --rm --name %p    -p 80:80 -p 443:443    --link custodian:custodian --volumes-from custodian    -v /etc/ssl:/etc/ssl \"

如何调整单元文件以正确挂载?

最佳答案

问题是 -v/etc/ssl:/etc/ssl\ 行中 \ 之后的尾随空格。这样它就不会转义行尾。

关于docker - 如何更正 nginx 单元文件中的无效转义序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55593704/

相关文章:

mongodb - mongo 不遵守 Docker 内存限制

regex - Nginx 对变量的字符串操作

nginx - 在nginx中worker_connections、keepalive_timeout和$connection是什么关系

ssl - 使用通配符 LetsEncrypt 证书时,NGINX 将子域重定向到记录根域的根目录

没有 Content-Length header 的 PUT 的 nginx proxy_pass 返回 411

linux - 无法使用 etcd 设置多主机 Docker 覆盖网络

docker - 忽略 .dockerignore 中的所有 .git 文件夹

docker - 使用 docker-compose 在两个容器之间共享文件夹

java - 使用基本身份验证和 ssl 调用 soap ws 时出错

android - Android 4.3 上的 javax.net.ssl.SSLHandshakeException