在 Lando 实例中创建符号链接

com*_*ted 6 wordpress ubuntu symlink docker lando

我正在使用名为 Lando(基于 Docker)的应用程序在本地(在 Ubuntu 上)运行 Wordpress 实例。我正在开发一个自定义的 Wordpress 插件,我想在 Lando 中符号链接到 Wordpress,但它不起作用。符号链接在那里,指向正确的本地目录但未被识别。

$ ln -s /home/user/Source/ta-clicklist ta-clicklist
$ pwd
/home/user/Documents/mysite.local/wordpress/wp-content/plugins
$ ls -lah
total 36K
drwxr-xr-x  7 user user 4.0K Jul 14 16:36 .
drwxr-xr-x  6 user user 4.0K Jul 14 16:34 ..
drwxr-xr-x  4 user user 4.0K Jul 13 14:40 akismet
-rw-r--r--  1 user user 2.6K Mar 18  2019 hello.php
-rw-r--r--  1 user user   28 Jun  5  2014 index.php
lrwxrwxrwx  1 user user   30 Jul 14 16:36 ta-clicklist -> /home/user/Source/ta-clicklist
drwxr-xr-x 11 user user 4.0K Jun 19 13:50 td-cloud-library
drwxr-xr-x  8 user user 4.0K Jun 19 13:49 td-composer
drwxr-xr-x  5 user user 4.0K Jun 19 13:50 td-social-counter
drwxr-xr-x  4 user user 4.0K Jun 19 13:50 td-standard-pack
Run Code Online (Sandbox Code Playgroud)

我尝试将文件复制到插件文件夹,激活插件,然后删除文件夹并对其进行符号链接。但是当我这样做时,我收到以下错误:

The plugin ta-clicklist/ta-clicklist.php has been deactivated due to an error:
Plugin file does not exist.
Run Code Online (Sandbox Code Playgroud)

我找到了一篇博客文章,其中有人建议您可以在 Lando YAML 文件中设置一个命令以在开始时配置符号链接,但这似乎也不起作用(除非我做错了什么)。这是我的.lando.yaml文件。

name: serverwatch
recipe: wordpress
config:
  webroot: wordpress
services:
  appserver:
    run_as_root:
      # Symlink to the source files
      - ln -snf /home/user/Source/ta-clicklist /app/wordpress/wp-content/plugins/ta-clicklist
Run Code Online (Sandbox Code Playgroud)

有没有人可以提供意见?

编辑以更新 YAML 文件的缩进

com*_*ted 5

重新阅读我之前提到的博客文章后,我意识到命令中的引用ln是错误的。需要引用源文件,而/user/path/to/my/folder/我将其引用为/home/user/path/to/my/folder/.

相应地更新参考后,它现在可以工作了。