关于从WSL与Docker Compose一起使用Docker时的卷


在WSL上安装docker

在本文中,我在Hyper-V上安装了Docker for Windows和。
假设Docker将启动。

对于WSL2,似乎不需要上述安装,但是
看来它只能在Insider Preview中使用,所以
假设已安装Windows版Docker,
通过检查~~上的暴露守护进程来假设Docker正在运行。

image.png

如何在WSL上安装docker
https://docs.docker.com/install/linux/docker-ce/ubuntu/
由于已经对其进行了描述,因此将其省略。

关于这个领域,其他人也有关于Qitta的博客,所以
我认为您可以立即安装。

问题是音量设置

首先docker-compose.yml和Dockerfile
要在docker上挂载的源代码等是
/ home / {{username}}
不是的文件夹
/ c /用户/ {{用户名}}
让我们将其保存在Windows等文件夹中。

*注意
通常,存储在Windows C驱动器中的文件是/ mnt / c / ????
但是,

使用WSL创建(编辑)/etc/wsl.conf,并添加以下内容。

/etc/wsl.conf

1
2
3
[automount]
root = /
options = "metadata"

然后它将是/ c / ????,而不是/ mnt / c / ?????。
通过保存此设置和Windows上的文件夹,例如/ c / Users / {{username}}
docker-compose.yml中所述的
体积可以是相对路径。

docker-compose.yml和Dockerfile及其源代码
如果您使用git管理它,那么了解这一点将很有用,因为我认为它是在基础知识中描述的。

为什么从WSL使用Docker?

答案是因为EDI是VScode !!

您知道最近的VS Code具有称为Remote-WSL的功能吗?

在开发Rails,PHP等时,如果尝试充分利用VScode的功能,则

  • 需要在Windows上安装PHP,Ruby等
  • 创建新文件时,换行代码为CRLF
  • 需要在git中设置core.autocrlf = false

开发环境Windows?执行环境Linux之间会产生有害影响。
必须在Windows上安装PHP,Ruby等。
毕竟,它将需要安装在WSL上,但是
与Windows不同,您可以轻松切换版本,
也可以在命令的基础上安装它,因此您不必创建开发环境过程手册。
如果使外壳简单,那么即使增加新的开发人员,也可以轻松构建开发环境。