所以在开始之前,我对此很陌生,因为当我给自己一个项目时,我学得最好,所以我想使用 Vagrant 和 Docker 来创建一个简单的 Node 和 Express 服务器,并在实际容器之外有一个共享文件夹。我遵循了一个教程,该教程解释了 nginx 和 php 的类似内容(有效),所以如果问题结构不太好或我的英语不够好,请告诉我!
正如我所说,我想练习一下 Docker(我最近开始使用它)并学习 Vagrant。这是我的 Dockerfile:
FROM ubuntu:latest
RUN apt-get update
RUN apt-get install -y software-properties-common
RUN apt-get update
RUN apt-get -y dist-upgrade
RUN apt-get install -y nodejs npm
RUN cd /home
RUN npm install -g express
RUN npm install -g express-generator
RUN ln -s /usr/bin/nodejs /usr/bin/node
RUN express projekt
RUN cd projekt && npm install
VOLUME ["/home/projekt/"]
EXPOSE 3000
RUN DEBUG=projekt:* /home/projekt/bin/www
此外,projekt
由于这是我的语言,所以故意这样拼写。所以我基本上想安装 node 和 npm。然后我想生成 Express 项目以及符号链接的 node 和 nodejs。现在的问题是最后一个命令失败了。它说:
/bin/sh: 1: /home/projekt/bin/www: not found
这是我的 Vagrantfile:
Vagrant.configure(2) do |config|
config.vm.synced_folder "./www", "/home/projekt" # Sync'd folder
config.ssh.port = "22"
config.vm.provider "docker" do |d|
d.build_dir = "./Docker" # specifies the path to the Dockerfile
d.ports = [ '80:3000' ] # Forwards port 8080 from the host to the Docker Container port 80
end
end
我的根项目文件夹如下所示:
.
├── Docker
│ └── Dockerfile
├── Vagrantfile
└── www
2 directories, 2 files
此外,如果这个问题不适合这个 StackExchange,你能否告诉我在哪里可以提问?